2012-07-11 91 views
1

在jQuery中,你可以做jQuery減少代碼以實現更好的可維護性?

$("#id1, #id2").doSomething(); 

但如果你有

var $id1 = $("#id1"); 
var $id2 = $("#id2"); 

什麼是有辦法輕鬆地組在一起,並執行DoSomething的()?

$($id1, $id2).doSomething(); //ERROR 

只有兩個元素是好的,但如果我有超過10個元素。我需要重複做...

$id1.doSomething(); 
$id2.doSomething(); 
.... 

有沒有簡單的方法來分組他們?

+1

這不是真正的jquery。如果你有很多需要存儲引用的jquery對象,把它們保存在一個數組中並遍歷該數組。 – Falmarri 2012-07-11 23:39:19

+0

@Falmarri jQuery對象已經是DOM元素的數組/元素,爲什麼要有兩層嵌套? – millimoose 2012-07-11 23:40:49

回答

3

您可以使用jQuery.add()

var $allIds = $id1.add($id2); 
$allIds.doSomething(); 
+0

太棒了!謝謝 – CIF 2012-07-13 15:28:58

1

我主張:也許你可以設置這些元素的新類。例如:

HTML代碼:

<div> 
    <div id="id1" class="exampleClass">...</div> 
    <div id="id2" class="exampleClass">...</div> 
</div> 

JavaScript代碼:

$(".exampleClass").doSomething(); 

這將工作的所有元素。

+0

謝謝,我知道這個...但我只是想知道如何添加額外的dom像$ .add – CIF 2012-07-25 15:46:40