zaxlctjs 2015-07-13 06:05 采纳率: 81%
浏览 5165
已采纳

JS里一个函数内可以有几个if语句?

这么写是没错的,

  <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>
  • 写回答

8条回答 默认 最新

  • danielinbiti 2015-07-13 06:13
    关注

    if语句个数没有限制,这两个区别在于,如果初始值是下面这样

     document.getElementById('A'+a).style.display='block'
     document.getElementById('pic'+a).src='bottom.png'
     那么这两个if的效果不一样。第一个里面的if判断是只要有一个符合条件,if判断结果是true,就都改变。
     而第二个函数中的if是分开的,如果按照上面的值,第一个if判断是false,第二个是true.
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(7条)

报告相同问题?

悬赏问题

  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器
  • ¥15 电脑桌面设定一个区域禁止鼠标操作