zoukankan      html  css  js  c++  java
  • 利用js闭包获取索引号

    以tab选项卡效果为例:

    网页中的选项卡效果
    如图。
    在鼠标点击规则标题的时候下面内容就会切换成规则的内容,这就是一个选项卡切换效果了。
    标题和其内容是一一对应的。
    在点击的时候就需要得到当前点击的索引号,用jquery的话可以直接通过.index()获取当时元素的索引值,那么用js呢?下面我们来利用js的闭包来实现获取索引。

     

    页面代码如下:
     1 <!DOCTYPE html>
     2 <html lang="en">
     3 <head>
     4     <meta charset="UTF-8">
     5     <title>Document</title>
     6 </head>
     7 <body>
     8     <style>
     9         #box{width:255px;height:20px;list-style: none;}
    10         #box li{float:left;line-height: 20px;width:49px;border:1px #000 solid;text-align: center;cursor: pointer;}
    11     </style>
    12     <ul id="box">
    13         <li>1</li>
    14         <li>2</li>
    15         <li>3</li>
    16         <li>4</li>
    17         <li>5</li>
    18     </ul>
    19     <script>
    20         var box = document.getElementById('box'),
    21         liTag = box.getElementsByTagName('li'),
    22         length = liTag.length,
    23         i = 0;
    24         for(;i<length;i++){
    25             liTag[i].onclick = (function(i){
    26                 return function(){
    27                     alert(i);
    28                 }
    29             })(i);
    30         }
    31     </script>
    32 
    33 </body>
    34 </html>
    在onclick事件执行一个(function(){})()的闭包操作,把每次点击的i传进去这样就能保存起来,从而得到当前的索引值,索引得到了,那选项卡实现起来就简单了对吧。
  • 相关阅读:
    退背包
    杜教筛BM
    Petya and Array CodeForces
    AC自动机模板
    KMP模板
    Docker系列器九:docker-compose与docker-compose.yml语法
    Fabric的简单Web应用
    ubuntu防火墙
    ubuntu16.04 HyperLedger Fabric 1.2.0 开发环境搭建
    crypto-config.yaml
  • 原文地址:https://www.cnblogs.com/dibaosong/p/4571974.html
Copyright © 2011-2022 走看看