6

準備ができていないプレーンなJavaScript関数でjQueryステートメントを使用することは、良い習慣ですか、それとも悪い習慣ですか? そうでない場合、正しい方法は何ですか?

//** End ready **//

function doSomething() {
    selectedClickBoxIndex = parseInt( jQuery('.' + clickBoxOnClass ).attr('value') );

    // Javascript code  
}
4

7 に答える 7

5

何も間違ってない。jqueryファイルを含めると、機能が拡張され、どこでも自由に使用できます

于 2012-04-23T13:24:17.137 に答える
3

それは何も悪いことではありません。jQuery は単なる Javascript ライブラリであり、両者の間に厳密な分離はありません。

valただし、関数を使用することもできます。

function doSomething() {
  selectedClickBoxIndex = parseInt( jQuery('.' + clickBoxOnClass ).val() );

  // Javascript code  
}
于 2012-04-23T13:25:57.720 に答える
2

関数 doSomething() が onLoad イベントの後にトリガーされる限り、そのように実行してもまったく問題ありません。$(document).ready は、ページが完全に読み込まれるまで JS の実行を延期する方法です。

于 2012-04-23T13:28:38.380 に答える
2

それはまったく問題ありません。ドキュメントの準備ができているか、同等のものから、DOMがロードされた後にこれらの関数を呼び出すようにしてください。

于 2012-04-23T13:24:27.830 に答える
2

それはまったく問題ありません。

確認したいことは、DOMReady の前に DOM ノードへの参照が行われないことです。これは、$('.someClass')またはを使用するかどうかに関係なく当てはまりますdocument.getElementsByClassName

関数はそのような参照を行いますが、関数自体が DOMReady の前に呼び出されない限り、これは問題ありません。

于 2012-04-23T13:24:36.437 に答える
2

document.ready 以外で使用しない理由はありません。これにより、dom のトラバースと変更がはるかに簡単になります。

多くの便利な jquery セレクターを介してページ上の要素を取得できることは、他の場所で使用する十分な理由です。

于 2012-04-23T13:25:34.183 に答える
1

これによりコード行が減り、jquery はすべてのブラウザーと互換性があるのではないでしょうか。

于 2012-04-23T13:24:03.157 に答える