gpt4 book ai didi

javascript - jQuery/javascript - 仅当尚未分配事件处理程序时才连接事件处理程序

转载 作者:行者123 更新时间:2023-11-28 12:47:53 24 4
gpt4 key购买 nike

我正在将 onclick 处理程序分配给复选框。有时,执行事件绑定(bind)的 JavaScript 会多次运行(在部分回发时),并且处理程序会被分配两次。如何防止处理程序被多次分配?

好的,谢谢您的回复。我写了一些东西来弄清楚元素是否有处理程序:

$.fn.hasHandler = function(eventName, handler)
{
var _hasHandler = false;

if(handler != undefined && this.data("events") !== null && this.data("events") !== undefined)
{
$.each(this.data("events"), function(name, handlers)
{
if(name === eventName)
{
$.each(handlers, function(index, value)
{
if(value.handler === handler)
{
_hasHandler = true;
}
});
}
});
}

return _hasHandler;
}

最佳答案

您可以先解绑。

$('#foo').unbind('click').bind('click', function(){...在这里做一些事情...});

关于javascript - jQuery/javascript - 仅当尚未分配事件处理程序时才连接事件处理程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5568702/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com