菜鸟向大牛进发

博客园 首页 联系 订阅 管理
闭包的应用:
var lis_lis = $("test").getElementsByTagName("li"); for (var i = 0, l = lis_lis.length; i < l; i++) { lis_lis[i].onclick = (function(x) { return function() { alert(x); } })(i); }

事件委托

<ul id="mylist">

        <li id="li_1">sdsdsd</li>

        <li id="li_2">sdsdsd</li>

        <li id="li_3">sdsdsd</li>

</ul>

 

现在我们要为这3个li绑定事件处理程序..

只需要在ul绑定事件处理程序.

js代码:

 

obj.eventHandler($("mylist"),"click",function(e){

                    e = e || window.event;

                    switch(e.target.id){    //大家应该还记得target是事件目标,只要点击了事件的目标元素就会弹出相应的alert.

                        case "li_1":

                        alert("li_1");

                        break;

                        case "li_2":

                        alert("li_2");

                        break;

                        case "li_3":

                        alert("li_3");

                        break

                    }

                })

posted on 2015-04-09 22:51  菜鸟向大牛进发  阅读(478)  评论(0编辑  收藏  举报