本文介绍了如何绑定DOM元素上的所有事件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
如何绑定所有事件(即点击
,按键
, mousedown
)在一个DOM元素上,使用jQuery,而不单独列出每一个?
How can I bind all events (i.e. click
, keypress
, mousedown
) on a DOM element, using jQuery, without listing each one out individually?
示例:
$('#some-el').bind('all events', function(e) {
console.log(e.type);
});
推荐答案
有一种简单(但不准确)的方法测试所有事件:
there is a simple (but not accurate) way to test all events:
function getAllEvents(element) {
var result = [];
for (var key in element) {
if (key.indexOf('on') === 0) {
result.push(key.slice(2));
}
}
return result.join(' ');
}
然后绑定所有这样的事件:
then bind all events like this:
var el = $('#some-el');
el.bind(getAllEvents(el[0]), function(e) {
/* insert your code */
});
这篇关于如何绑定DOM元素上的所有事件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!