现在的位置: 首页 > 综合 > 正文

Tab切换5种方法

2013年10月02日 ⁄ 综合 ⁄ 共 1953字 ⁄ 字号 评论关闭

原文:http://zhanfeng.blog.51cto.com/6109904/1017901

李老师用了三天的时间把Tab切换的效果讲给我们,感觉从中学到了很多很多,李老师的讲课一如既往的棒,从他身上学的的不仅仅是技术,更多的是思想。

通过Tab切换我们学到:函数,数组,for循环,if语句,this关键字。其中this关键字是最重要的,this关键字第一层含义就是指向当前对象。下面我就总结一下this关键字:

 

  1. <script type="text/javascript"> 
  2. var lis; 
  3. function test1(){ 
  4. Alert(this) 
  5. function test2(){ 
  6. lis=document.getElementsByTagName("li"); 
  7. for(var i=0;i<lis.length;i++){ 
  8. lis[i].onclick=test1
  9. </script> 

当点击第一和第三个li时候弹出来的是window对象,当点击第二个li时候弹出来的是html对象。这样我们就很清晰的理解this关键字到底是指向什么,this就是指向它的当前对象第一个和第三个的当前对象是li,第二个的当前对象是window

下面来说一下5种方法吧!!

第一种方法:最笨的,代码量也是最多,但是是最容易理解的!主要代码如下:

 

  1. <script type="text/javascript"> 
  2. function changeTab1(){ 
  3. var li1=document.getElementById("li1"); 
  4. var li2=document.getElementById("li2"); 
  5. var li3=document.getElementById("li3"); 
  6. var div1=document.getElementById("div1"); 
  7. var div2=document.getElementById("div2"); 
  8. var div3=document.getElementById("div3"); 
  9. li1.className="sp"
  10. li2.className=""
  11. li3.className=""
  12. div1.className="sp"
  13. div2.className=""
  14. div3.className=""
  15. </script> 
  16. <body> 
  17. <ul> 
  18. <li class="sp" id="li1" onclick="changeTab1()"><a href="#">页面一</a></li> 
  19. <li id="li2" onclick="changeTab2()"><a href="#">页面二</a></li> 
  20. <li id="li3" onclick="changeTab3()"><a href="#">页面三</a></li> 
  21. </ul> 
  22. <div class="sp" id="div1">内容一</div> 
  23. <div id="div2">内容二</div> 
  24. <div id="div3">内容三</div> 
  25. </body> 

它主要是写了三个function方法每一个方法对应一个li,通过点击li来调用每个方法。这种方法没什么好说的很好理解。

第二种方法是函数中有关键字,只需要建一个函数就可以,这种方法比上一种前进了一大步,有种进入了工业革命的感觉!代码如下:

 

  1. <script type="text/javascript"> 
  2. function changeTab(a,b,c){ 
  3. var lia=document.getElementById("li"+a); 
  4. var lib=document.getElementById("li"+b); 
  5. var lic=document.getElementById("li"+c); 
  6. var diva=document.getElementById("div"+a); 
  7. var divb=document.getElementById("div"+b); 
  8. var divc=document.getElementById("div"+c); 
  9. lia.className="sp"
  10. lib.className=""
  11. lic.className=""
  12. diva.className="sp"
  13. divb.className=""
  14. divc.className=""
  15. </script> 
  16. <body> 
  17. <ul> 
  18. <li id="li1" class="sp" onclick="changeTab(1,2,3)"><a href="#">页面一</a></

抱歉!评论已关闭.