1

この DOM 要素を参照するには:

<input id="chkBxCheezDoodles" type="checkbox" />

Windows 8 JS アプリでは、次のことができます。

document.getElementById("chkBxCheezDoodles").checked = true;

またはこれ:

chkBxCheezDoodles.checked = true;

直接参照の前に getElementById が優先されるのはいつですか? getElementById を使用する方が「クリーン」と見なされますか?

4

2 に答える 2

3

私の好みは、グローバル名前空間に投影される変数に依存するのではなく、getElementById を使用することです。これにより、同様の名前付き変数、衝突などの問題は発生しません。

私見、私は ID をまったく使用しないようにし、代わりにカスタム属性または特定の CSS クラスのいずれかで querySelectors を使用します。

于 2012-11-28T01:13:32.757 に答える
2

私はドミニクに同意します。querySelector の代わりに getElementById を使用すると、よりパフォーマンスが向上するのではないかと思いますが、通常、これらのニッケルとダイムの時間の節約は気にしません。document.querySelector を常に入力したくないし、毎回 document.querySelector と querySelectorAll の間で決定しなければならないのは好きではありません。「私が何かを期待しているのか、それともいくつかのことを期待しているのか見てみましょう.」そのため、 ocho.jsライブラリでクエリを呼び出す関数で両方をラップしました。私は通常、単に「q」としてグローバル名前空間にアプリに持ち込みます。q("#charlie")そうすれば、「charlie」という要素を取得するためにいつでも行うことができます。q(".large")large のクラスを持つすべての要素を取得します。1 つしかない場合は、DOM 要素を返します。複数ある場合は、通常の配列を返します。これにより、私の生活が楽になります。それならできる...

q(".large").forEach(function(el) { el.style.fontSize = 'xx-large'; });
于 2012-11-28T01:44:18.530 に答える