请教高人,去掉window.onload=function之后为什么不行?

来源:10-1 编程挑战

用户1115823

2015-04-30 11:54

请教高人,去掉window.onload=function之后为什么不行?

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>实践题 - 选项卡</title>
    <style type="text/css">
     /* CSS样式制作 */
     *{padding:0;
       margin:0;
       font:12px normal "microsoft yahei";
     }
     ul{ width:300px;
          list-style:none;
          border-bottom:2px solid brown;
         
          height:30px;
        
         
      }
     li{ display:inline-block;
          border:1px solid grey;
          border-bottom:none;
          text-align:center;
          padding:0px 10px;
          width:50px;  
          height:28px;
          line-height:28px;
          margin:0 3px;
          background:#fff;
          cursor:pointer;
          
         
      }
      .on{
          border-top:2px solid brown;
          border-bottom:2px solid #fff;
      }
      
      
    
     
    div{
          padding-top:10px;
          width:300px;
          height:120px;
          line-height:24px;
          border:1px solid blue;
          border-top:none;
        
      }
   
    .hide{
          display:none;
          
    }
   
    </style>
    <script type="text/javascript">
     
    // JS实现选项卡切换
   var ali=document.getElementsByTagName("li");
    var adiv=document.getElementsByTagName("div");


  for(var i=0;i<3;i++){
       var x=i;
       ali[i].onclick=function(){
           for(var n=0;n<3;n++){
           ali[n].className=" ";
           adiv[n].className="hide";
           }
          this.className="on";
          adiv[x].className="";
   } 
  }
   
     
    
    </script>
 
</head>
<body>
<!-- HTML页面布局 -->

<ul>
    <li>房产</li>
    <li >家居</li>
    <li >二手房</li>
</ul>
<div >
    275万购昌平邻铁三居 总价20万买一居<br/>
    200万内购五环三居 140万安家东三环<br/>
    北京首现零首付楼盘 53万购东5环50平<br/>
    京楼盘直降5000 中信府 公园楼王现房
</div>

<div>
     40平出租屋大改造 美少女的混搭小窝<br/>
     经典清新简欧爱家 90平老房焕发新生<br/>
     新中式的酷色温情 66平撞色活泼家居<br/>
     瓷砖就像选好老婆 卫生间烟道的设计
</div>
<div>
    通州豪华3居260万 二环稀缺2居250w甩<br/>
    西3环通透2居290万 130万2居限量抢购<br/>
    黄城根小学学区仅260万 121平70万抛!<br/>
    独家别墅280万 苏州桥2居优惠价248万
</div>
</body>
</html>


写回答 关注

3回答

  • 魔纹
    2015-04-30 12:25:32

    你所说的情况可能是由于你的js加载的时候,可是你其中的变量由于html文本未完全加载,从而抛出error。但还是具体分析好

    慕粉1822... 回复用户1115...

    muge 10说的是对的,如果不用window.onload的话,你就要先加载body,等body加载完了,再去调用script,所以script要放body后面,但是用了window.onload就不用管了,他的意思就是,等页面加载完成再去调用script

    2016-11-11 21:20:49

    共 3 条回复 >

  • 魔纹
    2015-04-30 12:23:06

    能否将你的代码放出

  • Perona
    2015-04-30 12:22:35

    window.onload即页面加载事件。

    window.onload=function(){}即页面加载完调用这个匿名函数。

    函数要调用才有效果。

JavaScript进阶篇

本课程从如何插入JS代码开始,带您进入网页动态交互世界

468194 学习 · 21891 问题

查看课程

相似问题