0

我希望一个事件能够由具有适当上下文的任何元素触发。现在我正在这样做:

$(document.body).on('mycustomevent', '*', function(e) {
  e.stopPropagation()
  console.log('mycustomevent')
  console.log(this)
}

这有什么问题吗?有没有更好的办法?

另一个相关问题是如何为未附加到文档的元素触发此事件?IE:

$('<div></div>').trigger('mycustomevent')
4

1 回答 1

0

对于第一部分,我会$(document).on改用。

对于第二部分,只需将事件处理程序附加到元素本身。

$('<div></div>').on('mycustomevent', function(e) {
    e.stopPropagation()
    console.log('mycustomevent')
    console.log(this)
}).trigger('mycustomevent')
于 2012-08-26T04:38:47.937 回答