我希望某个事件能够被具有适当上下文的任何元素触发。现在我正在这样做:
$(document.body).on('mycustomevent', '*', function(e) {
e.stopPropagation()
console.log('mycustomevent')
console.log(this)
}
这有什么问题吗?还有更好的方法吗?
另一个相关的问题是如何为未附加到文档的元素触发此事件?即:
$('<div></div>').trigger('mycustomevent')
答案 0 :(得分:0)
对于第一部分,我会改为使用$(document).on
。
对于第二部分,只需将事件处理程序附加到元素本身。
$('<div></div>').on('mycustomevent', function(e) {
e.stopPropagation()
console.log('mycustomevent')
console.log(this)
}).trigger('mycustomevent')