アップデート:
「単純な」解決策:
var domElements = [<div id="generic-wrapper">...</div>];
$.merge( domElements, $(domElements).find('*'));
より良い解決策:
あなたがやろうとしていることは、dom要素の配列が与えられた場合、それらの子孫のそれぞれを配列に追加することのように聞こえます。目的のDOM操作にjQueryを使用している場合は、それらを直接選択する必要があります(以下のコードサンプルを参照)。これにより、基本的な配列のインデックス作成に使用できる基本的な配列構造を持つjQueryオブジェクトが返されます。真の配列を取得する必要がある場合は、オブジェクトの.toArray()
メソッドを使用できます。ただし、jQueryオブジェクトは、一致したすべての要素を簡単に操作できるため(また、を使用してそれらを反復処理できるため)、通常はより便利です.each()
。
とそのすべての子孫を選択します(idが変数に格納されている場合は、+変数名#wrapper
に置き換えます)。'#wrapper'
'#'
var domElements = $('#wrapper, #wrapper *');