2011-12-13 65 views
1

我有2個按鈕。我希望能夠點擊其中的一個並只更改其值屬性。下面的代碼片段工作,但只適用於第二個對象。我試過(obj1 || obj2),但這也不起作用。請幫助如何在javascript中爲多個HTMLElement事件使用相同的函數?

(obj1,obj2).onclick = function this_test(){ 
    this.value = "new value" 
}; 
+0

順便說一句,你的例子只對第二個對象起作用的原因是因爲逗號運算符評估雙方並丟棄左邊的結果。 –

回答

6
var clickFunction = function() { 
    this.value = "new value"; 
}; 

obj1.onclick = clickFunction; 
obj2.onclick = clickFunction; 

Example showing this representing the clicked item,即使它們共享的功能。

+0

謝謝。所以沒有辦法逃避這個 obj1.onclick = clickFunction; obj2.onclick = clickFunction; 並寫在一行? – oFca

+0

是的,可以這樣做,'obj1.onclick = obj2.onclick = clickFunction;'但它確實是一種可怕的方式來做到這一點,一個額外的行,讓您的代碼易於閱讀是值得的額外費用線。 – jondavidjohn

相關問題