我有一個按鈕,當按下除了做某件事情,它改變了自己的ID,所以當再次按下時,它會做一些不同的事情,就好像它是一個不同的按鈕。問題是,第一次更改id之後,prev按鈕單擊函數會拋出一個錯誤,因爲該id不再存在。如何讓1個按鈕改變ID做不同的事情?
$("#button1").click(function() {
//do something
document.getElementById("#button1").id = "button2";
});
$("#button2").click(function() {
//do something different
document.getElementById("#button2").id = "button1";
});
你應該改變一些與ID不同的東西......比如數據屬性或者類。然後,您可以將您的行爲建立在數據屬性或是否存在類上。 – smerny 2014-10-27 18:04:08
我真的建議你只顯示和隱藏單獨的按鈕,這樣你就不必使用jquery函數綁定管理使你的生活複雜化 – Kristian 2014-10-27 18:04:12
我會改變方法。就像上面評論中提到的那樣,或者刪除第一個事件監聽器(在第一個事件處理器中),並添加一個新的監聽器。 – Teemu 2014-10-27 18:05:05