ホームページ >ウェブフロントエンド >jsチュートリアル >jQuery で `$(this)` と `this` を使用する必要があるのはどのような場合ですか?

jQuery で `$(this)` と `this` を使用する必要があるのはどのような場合ですか?

Linda Hamilton
Linda Hamiltonオリジナル
2024-12-28 05:54:10210ブラウズ

When Should I Use `$(this)` vs. `this` in jQuery?

jQuery での '$(this)' と 'this' の区別

jQuery 入門チュートリアルを進めているときに、 '$(this)' を使用する場合と 'this' を直接使用する場合の微妙な違い。あなたが提供したコード サンプルでは:

$("#orderedlist").find("li").each(function (i) {
    $(this).append(" BAM! " + i);
});
$("#reset").click(function () {
    $("form").each(function () {
        this.reset();
    });
});

重要な違いは jQuery 固有の機能にあると正しく推測しました。

'$(this)' for jQuery Operations

最初の例では、「$(this)」が「each」関数内で使用され、 「li」要素。 「this」を「$(this)」内にカプセル化することで、それを jQuery オブジェクトに変換します。これにより、「append」などの jQuery メソッドを使用して要素を直接操作できるようになります。

非 jQuery 関数の場合は「this」

2 番目の例では、「this」 ' は、リセット ボタンのクリック ハンドラー関数内で使用されます。ここでは、「form」要素をターゲットにしています。フォームのリセットは標準の HTML 機能であり、jQuery の介入を必要としません。したがって、「this」で直接「reset」を呼び出すことができます。

各フォームを使用する場合

原則として、jQuery 固有の処理を実行したい場合は常に、要素に対する操作には、「$(this)」を使用します。これにより、要素が jQuery オブジェクトとしてカプセル化され、そのすべての機能にアクセスできるようになります。フォームのリセットなど、jQuery 以外の操作の場合は、「this」を直接使用できます。

関係を記憶する

話を単純化するために、次の等価性に留意してください。

$(this)[0] === this

これは、インデックスを作成することで、いつでも元の DOM 要素にアクセスできることを意味します。 '[0]' を持つ jQuery オブジェクト。

以上がjQuery で `$(this)` と `this` を使用する必要があるのはどのような場合ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。