这么写是没错的,
<script type="text/javascript">
function show(a){
if(document.getElementById('A'+a).style.display=='none'||document.getElementById('pic'+a).src=='bottom.png'){
document.getElementById('A'+a).style.display='block';
document.getElementById('pic'+a).src='top.png';
}else{
document.getElementById('A'+a).style.display='none';
document.getElementById('pic'+a).src='bottom.png';
}
}
</script>
那为什么这么写就只有上面那个if语句有效果,下面的没有效果?
<script type="text/javascript">
function show(a){
if(document.getElementById('A'+a).style.display=='none'){
document.getElementById('A'+a).style.display='block';
}else{
document.getElementById('A'+a).style.display='none';
}
if(document.getElementById('pic'+a).src=='bottom.png'){
document.getElementById('pic'+a).src='top.png';
}else{
document.getElementById('pic'+a).src='bottom.png';
}
}
</script>
一个函数内只能写一个if语句吗?
贴出下面body里面的代码
<div class="A">
<img src="bottom.png" id="pic1" onclick="show(1)"/>
我的文档
</div>
<div class="nav">
<ul id="A1" style="display:none;">
<li>Adobe</li>
<li>Adobe Scripts</li>
<li>Downloads</li>
<li>多益网络</li>
</ul>
</div>
if语句个数没有限制,这两个区别在于,如果初始值是下面这样
document.getElementById('A'+a).style.display='block'
document.getElementById('pic'+a).src='bottom.png'
那么这两个if的效果不一样。第一个里面的if判断是只要有一个符合条件,if判断结果是true,就都改变。
而第二个函数中的if是分开的,如果按照上面的值,第一个if判断是false,第二个是true.
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。