问答详情
源自:1-5 编程练习

ul[this.id].style.display=="block"这里为什么要两个等号,害我搞了半天

    window.onload=function(){
var p =document.getElementById("menu").getElementsByTagName("p");
var ul = document.getElementById("menu").getElementsByTagName("ul");
      // 将所有点击的标题和要显示隐藏的列表取出来
      
        for(var i=0;i<p.length;i++){
            
        p[i].id=i;  //索引值,给所有p标签加上id=i
        p[i].onclick=function(){
         if(ul[this.id].style.display=="block"){
             ul[this.id].style.display="none"
              }
            else{
              ul[this.id].style.display="block"
          }
        }
        
        }

提问者:慕圣1924471 2016-08-29 17:40

个回答

  • renyi3916741
    2016-10-06 16:48:27

    ”==“ 是判断二者的值是否相等   ”=“是赋值,是将后者的值赋值给前者,不需要比较,在if语句中用”==“来判断ul当前的状态,来判断执行的操作,若是用”=“,则相等于说ul的状态就是后者,直接执行其下面的语句,但不会执行else

  • july777
    2016-08-29 19:00:13

    ==是判断 =是赋值