我正在尝试将我自己的自定义事件触发为全局事件,以便我页面上的任何内容都可以收听它们并做出反应,但是,对于动态添加的内容,它不起作用。请参阅我的小提琴:http: //jsfiddle.net/6TMkG/8/
据我了解,对于 jQuery 知道的页面中的任何元素都会触发该事件,并且它似乎不会触发li
's 的事件,即使它们确实有一个处理程序。
任何人都知道如何解决这种行为?
我正在尝试将我自己的自定义事件触发为全局事件,以便我页面上的任何内容都可以收听它们并做出反应,但是,对于动态添加的内容,它不起作用。请参阅我的小提琴:http: //jsfiddle.net/6TMkG/8/
据我了解,对于 jQuery 知道的页面中的任何元素都会触发该事件,并且它似乎不会触发li
's 的事件,即使它们确实有一个处理程序。
任何人都知道如何解决这种行为?
如果你想要全局事件,那么你可以在文档上绑定事件处理程序,并在文档中的任何元素上触发它。
$(document).on('randomEvent', callback);
$('ul').click(function() {
$(this).trigger("randomEvent");
});
试试这个
$("#b2").click(function() {
//$.event.trigger("randomEvent");
$('li').trigger('randomEvent');
});
抱歉,我完全错过了..我没有看到您问题的第一部分..自定义事件..看起来您正在关联 randomEvent 但与它相关联时您没有触发该事件..
确保在 Document.Ready 函数中添加触发器事件,以便 evnet 处理程序与元素可用时相关联。