获取一堆name相同的标签,点击弹出显示第几个标签

来源:互联网 发布:linux qt 编辑:程序博客网 时间:2024/05/18 02:09

本题主要考察闭包的用法有三种解法

1. html部分;        <li>111</li>        <li>222</li>        <li>333</li>        <li>444</li>        <li>555</li>2. javascript部分;        2.1第一种写法;自定义属性法            var lis = document.getElementsByTagName("li");            for(var i=0; i<lis.length; i++){                lis[i].index = i+1;                lis[i].onclick = function(){                    alert(this.index);                }            }           2.2 第二种解法:闭包法            var lis = document.getElementsByTagName("li");            for(var i=0; i<lis.length; i++){                (function(i){                    lis[i].onclick = function(){                        alert(i+1);                     }                 })(i)            }           2.3第三种解法:闭包返回值法;(不推荐使用)             var lis = document.getElementsByTagName("li");                for(var i=0; i<lis.length; i++){                    lis[i].onclick =(function(i+1){                        return  function(){                            alert(i+1);                        }                    })(i+1)                }   
1 0
原创粉丝点击