jquery 释放JavaScript事件处理程序

vmjh9lq9  于 2022-12-12  发布在  jQuery
关注(0)|答案(2)|浏览(168)
$(".guide").focus(function(){
   $(this).removeClass("guide").val("");
});

我只需要知道是否需要做其他事情来释放事件处理程序,或者这样做可以吗?

gcmastyq

gcmastyq1#

您也可以使用jQuery.fn.one做为事件行程常式,呼叫一次后就会自动中断链接。

$(".guide").one("focus", function(){
   $(this).removeClass("guide").val("");
});
fjaof16o

fjaof16o2#

不太清楚你说的“释放事件处理程序”是什么意思,但我会猜的。
只有当您使用.delegate行程常式时,移除类别才有作用。在您明确将行程常式附加至元素的情况下,您需要从元素移除.unbind行程常式。
如果在一个窗体中有许多带有引导类的元素,那么最好使用如下的委托

$('.guide').delegate('form', 'focus', function(){
   $(this).removeClass("guide").val("");
});

相关问题