这么写是没错的,
<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.
这个没有限制吧,没听说一个函数里面只能有一个if语句。
一个函数能有多个if
只要按照格式规范书写,if语句可以无限制使用,就看你怎么用了!
if语句可以书写多个
你这个不是语法错误,而是逻辑错误
document.getElementById 好久没见到这种写法了!呼呼
if可以有无数个。但不建议套太多的,会影响执行效率的。你这是逻辑问题,再想想吧