• js闭包的应用


     1      <ul id="ul1">
     2         <li style="border:1px solid red;">1</li>
     3         <li style="border:1px solid red;">2</li>
     4         <li style="border:1px solid red;">3</li>
     5      </ul>
     6 
     7      <div id="div1">
     8          <div style="background: red;height:300px;display:block;"></div>
     9          <div style="background: green;height:300px;display:none;"></div>
    10          <div style="background: blue;height:300px;display:none;"></div>
    11      </div>
    12 
    13 <a href="http://www.baidu.com" target=“_blank”>link<a>
     1       window.onload = function(){
     2              var oLis = document.getElementById("ul1").getElementsByTagName('li');
     3              for(var i=0; i< oLis.length; i++){
     4                  oLis[i].onclick = (function(i){
     5                        return function(){
     6                          oDiv._change_tab(i);
     7                       }
     8                  })(i);
     9              }
    10         }
    11 
    12         var oDiv = {
    13             _change_tab: function(index){
    14                  var oDivs = document.getElementById("div1").getElementsByTagName("div");
    15                  var oCur_Slibs = oDiv._get_sliblings(oDivs[index], oDivs);
    16                  oDivs[index].style.display = "block";
    17                  for(var n=oCur_Slibs.length-1; n >= 0; n--){
    18                      oCur_Slibs[n].style.display = "none";
    19                 }             
    20             },
    21             _get_sliblings: function(currentNode, childNodes){
    22                 var slibsList = [];
    23                 for(var n= childNodes.length-1; n>=0; n--){
    24                      if(childNodes[n].nodeType === 1 && childNodes[n] !== currentNode){
    25                           slibsList.push(childNodes[n]);
    26                      }
    27                 }
    28                 return slibsList;
    29             }
    30         }
    31 
    32         window.onbeforeunload =  function close(){
    33             var oLis = document.getElementById("ul1").getElementsByTagName('li');
    34             for(var n= oLis.length-1; n>=0; n--){
    35                 oLis[i].onclick = null;
    36                 console.log(i);
    37                 alert(i);
    38             }
    39         }   
  • 相关阅读:
    VGA Vesa DDC显示接口
    sourceinsight 技巧
    framebuffer 相关
    Windows Live Writer 粘贴表格的使用技巧
    The Linux Kernel API
    XBAP and Silverlight : Product Lining in .NET 3.0/WPF
    DDC and EDID
    cmem模块,cmemk
    Linux Platform Device and Driver,platform_add_devices()>platform_driver_register()
    platform设备驱动全透析
  • 原文地址:https://www.cnblogs.com/yiliweichinasoft/p/4060996.html
Copyright © 2020-2023  润新知