我有一个类,可以在点击时加载模态框。
我想为特定元素删除它,所以我使用.removeClass
$('.future').removeClass('ajax-page-content');
虽然在控制台中查看时删除了类,但单击该元素仍会加载模式框以便它被否决。我该如何解决?感谢
答案 0 :(得分:1)
在点击监听器(如
)上注册时,必须使用on
方法
$(document).on('click','.ajax-page-content',function(){
console.log('clicked')
})
答案 1 :(得分:0)
您可能还需要删除以前注册的点击事件处理程序。您可以使用jQuery unbind方法执行此操作。
yourJQuerySelectorForTheElement.unbind("click");
假设yourJQuerySelectorForTheElement
是jQuery选择的元素。它是您删除ajax-page-content
css类
这又取决于您注册点击事件的方式。如果使用click事件处理程序将其直接绑定到元素,则需要使用unbind
方法显式删除它。
$(function(){
$(".ajax-page-content").click(function(e){
alert("Show My modal popup");
});
$(document).on("click",".remove",function(e){
var _this=$(this);
_this.closest(".linkHolder") // This is just to get the parent div.
// you may replace based on how you have your markup.
.find("a.future")
.removeClass("ajax-page-content")
.unbind("click");
});
});
jsbin上的工作样本here
但是如果您使用jquery on
方法注册了Click事件处理程序,则无需显式删除它。
$(document).on("click",".ajax-page-content",function(e){
alert("My modal popup");
});
工作样本here