首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 网站开发 > Web前端 >

减小事件绑定

2012-10-27 
减少事件绑定ul idulli id1click/lili id2click/lili id3click/lili id4c

减少事件绑定

 <ul id='ul'>        <li id="1">click</li>        <li id="2">click</li>        <li id="3">click</li>        <li id="4">click</li>    </ul>想象一下现在我们有一个10列、100行的HTML表格,你希望在用户点击表格中的某一单元格的时候做点什么。比如说我有一次就需要让表格中的每一个单元格在被点击的时候变成可编辑状态。如果把事件处理器加到这1000个单元格会产生一个很大的性能问题,并且有可能导致内存泄露甚至是浏览器的崩溃。相反地,使用事件代理的话,你只需要把一个事件处理器添加到table元素上就可以了,这个函数可以把点击事件给截下来,并且判断出是哪个单元格被点击了。  <script>        var ul = d.getElementById('ul');        ul.onclick = function(e)        {           e = e || window.event;           var obj = e.target || e.srcElement;           obj.className = 'color';           //alert(obj.id); //obj指向当前点击的li元素           //alert(this.id);//this指向ul         }        /*        for(var i = 0 ; i < lis.length ; i++)        {            lis[i].onclick = function()            {                alert(this.id);            }        }        */    </script>

热点排行