用js闭包,在ul 里点击 li,输出对应的下标

首先,html 代码:

<ul class="list">
            <li>this is item</li>
            <li>this is item</li>
            <li>this is item</li>
            <li>this is item</li>
            <li>this is item</li>
            <li>this is item</li>
            <li>this is item</li>
            <li>this is item</li>
            <li>this is item</li>
            <li>this is item</li>
            
        </ul>

js 代码:

window.onload = function(){
            var lis = document.getElementsByTagName("li"); //找到元素li标签,总共十个
            for(var i = 0;i<lis.length;i++ ){              //对li标签进行for循环
                lis[i].onclick = (function(a){        //点击事件,用一个函数function(a)
                    return function(){             //用到闭包,里面再套一个函数,弹出点击的数 
                        alert(a+1);
                    }
                })(i);
            }
             
        }

大致就是这样的(=^ ^=)

posted @ 2018-10-10 14:32  阳光下的三叶草  阅读(1024)  评论(0编辑  收藏  举报