我正在使用off()
,我不确定为什么这不起作用。我不确定这是removeClass()
来自document
还是#pager-next
?
$(document).off('click', '#pager-next').removeClass('disabled');
我希望从#pager-next
而不是document
中删除该课程。
然而这有效:
$('#pager-next').removeClass('disabled');
但后来我没有得到off
答案 0 :(得分:0)
您不应在此处使用文档元素,并将off
直接应用于元素:
$('#pager-next').off("click").removeClass('disabled');
如果要保留原始事件委托,则必须按照jQuery文档中的说明进行操作,并按名称引用该函数,否则将删除所有处理程序:
function happensOn(){ alert("Stuff happens"); }
$('#pager-next').on("click", happensOn);
$('#pager-next').off("click", happensOn);
看看这里:http://api.jquery.com/off/(他们在底部有一个实现的代码段,展示了它是如何工作的。)
答案 1 :(得分:0)
在find()
之后添加off()
即可。
$(document).off('click', '#pager-next')
.find("#pager-next").removeClass('disabled');