2010-05-25 88 views
1

在Javascript中,如何將DOM元素的事件處理程序設置爲默認行爲?將元素重置爲「默認」事件

例如,假設我設置onkeypress事件的輸入元素:

elem.onkeypress = function() { alert("Key pressed!"); } 

後來,我怎麼能刪除此事件?簡單地將onkeypress屬性設置爲null可以嗎?我試過了,它可以工作,但我不知道這是否是正確的方法。

回答

1

我很確定這些事件將會是undefined而不是null,所以你最好還是回到那個位置。

它可能是矯枉過正的,但要更強大,你可以更好地保持參考onkeypress事件&重新分配(以防其他腳本也試圖使用它) 。所以:

var oldKeyPress = elem.onkeypress; 
elem.onkeypress = function() { alert("Key pressed!"); } 

//... later ... 

elem.onkeypress = oldKeyPress;