我分配一個onclick處理程序複選框。有時候,綁定事件的javascript運行不止一次(在部分回發上)並且處理程序被分配兩次。我怎樣才能防止處理程序分配多次?jQuery/JavaScript的 - 只有當它尚未分配的線程事件處理程序
好的,謝謝你的回覆。我寫的東西了找出如果元素具有hanlder:
$.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;
}
如果您正在查看部分帖子後臺,您是否重新分配了處理程序,因爲該元素已被重新創建? – StuperUser 2011-04-06 15:15:57
國際海事組織你需要改善你的結構有點像在部分回傳呈現的JS代碼中分配事件不是一個好主意。我很想知道你的用例,爲什麼你不能將事件代碼拉到寬javascript應用程序? – neebz 2011-04-06 15:21:05