JavaScript事件委托技术实例分析
作者:bea
本文实例分析了JavaScript事件委托技术。分享给大家供大家参考。具体分析如下: 如果一个整体页面里有大量的按钮.我们就要为每一个按钮绑定事件处理程序.这样就会影响性能了. 首先每个函数都是对象,对象就会占用很多内存.内存中的对象越多,性能就越差. 其次,dom访问次数增多,就会导致延迟加载页面.事实上,从如何来利用好事件处理程序,还是有很好的解决方案的. 事件委托: 对事件处理程序过多的问题解决的方案就是事件委托技术. 事件委托技术利用了事件冒泡.只需指定一个事件处理程
本文实例分析了JavaScript事件委托技术。分享给大家供大家参考。具体分析如下:
如果一个整体页面里有大量的按钮.我们就要为每一个按钮绑定事件处理程序.这样就会影响性能了.
首先每个函数都是对象,对象就会占用很多内存.内存中的对象越多,性能就越差.
其次,dom访问次数增多,就会导致延迟加载页面.事实上,从如何来利用好事件处理程序,还是有很好的解决方案的.
事件委托:
对事件处理程序过多的问题解决的方案就是事件委托技术.
事件委托技术利用了事件冒泡.只需指定一个事件处理程序.
我们可以为某个需要触发事件的父元素来绑定事件处理程序.
<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绑定事件处理程序.
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
}
})
如果在一个复杂的web应用程序中,.这种事件委托是非常实用的.
如果不采用这种方式的话,一个一个去绑定那就是数不清的事件处理程序.
希望本文所述对大家的javascript程序设计有所帮助。
猜你喜欢
您可能感兴趣的文章:
- javascript实现按回车键切换焦点
- jquery中ajax使用error调试错误的方法
- JQuery中extend的用法实例分析
- jQuery中noConflict()用法实例分析
- jquery实现聚光灯效果的方法
- js实现Select下拉框具有输入功能的方法
- JQuery中serialize()用法实例分析
- jQuery中on()方法用法实例详解
- JS实现文字向下滚动完整实例
- jquery中filter方法用法实例分析
- Jquery对select的增、删、改、查操作
- JavaScript常用的弹出广告及背投广告实现方法
- js实现图片从左往右渐变切换效果的方法
- js实现多选项切换导航菜单的方法
- javascript实现多级联动下拉菜单的方法
- javascript强制点击广告的方法
- js控制网页背景音乐播放与停止的方法
- jquery控制背景音乐开关与自动播放提示音的方法
- 触屏中的JavaScript事件分析