首页 > 代码库 > jquery——获取dom元素身上的绑定事件的问题
jquery——获取dom元素身上的绑定事件的问题
在jQuery1.8.0版本之前,我们要想获取某个DOM绑定的事件处理程序可以这样:
$.data(domObj,‘events‘);//或者$(‘selector‘).data(‘events‘)
jQuery1.8.0版本开始,jQuery突然不支持这样使用了,而是改到了一个叫‘_data‘的函数功能上了,即,1.8.0及以后的版本你可以这么用:
$._data(domObj,‘events‘);//注意,这里不能像$(‘selector‘)._data(‘events‘)这样用了。 /*例如可以写成*/ $._data($(‘#box‘).get(0),‘events‘) // 这里是获取id为box的dom元素身上绑定的所有事件 $._data($(‘#box‘).get(0),‘events‘)[‘click‘]// 这里是获取id为box的dom元素身上绑定的click事件 /*或写成*/ $._data($(‘#box‘).get(0)).events /*或还可以写成*/ $.cache[$(‘#box‘).get(0)[$.expando]].events
兼容兼容各个jQuery版本的方式,这样获取即可:
var eventsData = http://www.mamicode.com/$.data(domObj,‘events‘) || $._data(domObj,‘events‘);//这个改变在easyui 1.3.1的源码中也有体现。
jquery——获取dom元素身上的绑定事件的问题
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。