通过 Chrome 开发者工具,我找到了一个我想要删除的点击事件监听器:
如果我使用开发人员工具删除监听器,它就可以工作。现在我发现监听器是通过 jQuery 添加的:
$(".js_playerlist").on("click",".playerlist_item",function(){
var a=$(this).hasClass("nothingThere");
if(!a) {
var d=$(this).data("msgid");
if(d) {
b.loadChatLogWithPlayer(this,d)
} else {
b.loadChatLogWithPlayer(this)
}
}
});
如何不使用 jQuery 通过 Javascript 删除此事件监听器?
最佳答案
您必须使用 jQuery 函数来执行此操作,因为该事件由 jquery 附加,因此请使用 unbind()
或 off()
这两个函数都删除了事件:
$(".js_playerlist").delay(1000).off("click",".playerlist_item");
//OR
$(".js_playerlist").delay(1000).unbind( "click.playerlist_item" );
您可以使用 javascript 方法 removeEventListener()
但您必须将要删除的函数作为参数传递,并且在您的情况下附加事件的脚本会避免这种情况。
希望这会有所帮助。
关于javascript - 删除由另一个脚本设置的点击事件监听器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38105534/