ホームページ  >  記事  >  ウェブフロントエンド  >  jQuery の this と $(this) の違いは何ですか?

jQuery の this と $(this) の違いは何ですか?

青灯夜游
青灯夜游オリジナル
2020-11-26 16:15:233410ブラウズ

違い: これは、現在のコンテキスト オブジェクトが html DOM オブジェクトであり、html オブジェクトが所有するプロパティとメソッドを呼び出すことができ、「$(this)」で表されるコンテキスト オブジェクトが jquery コンテキストであることを意味します。 jquery のメソッドと属性値を呼び出すことができるオブジェクト。

jQuery の this と $(this) の違いは何ですか?

関連する推奨事項: 「jQuery ビデオ チュートリアル

this と $(this) の使用法の違い

$("#textbox").hover(
    function() {
        this.title = "Test";  },
    fucntion() {
        this.title = "OK”;  }
);

これは実際には Html 要素 (テキストボックス) であり、テキストボックスには text 属性があるため、このように記述しても問題ありません。しかし、これを $(this) に置き換えると、そうではなく、エラーが報告されます。次の記述は誤りです。

$("#textbox").hover(
    function() {
        $(this).title = "Test";  },
    function() {
        $(this).title = "OK";  }
);

$(this) ここは JQuery オブジェクトですが、jQuery オブジェクトには title 属性がないため、この記述は誤りです。 JQuery には DOM オブジェクトの属性を取得/設定できる attr() メソッドがあるため、正しい書き方は次のようになります。

$("#textbox").hover(
    function() {
        $(this).attr('title', 'Test');
    },
    function() {
        $(this).attr('title', 'OK');
    }
);

JQuery を使用する利点は、さまざまなブラウザの操作をパッケージ化できることです。 DOM オブジェクトのバージョンに依存するため、this の代わりに $(this) を一律に使用することをお勧めします。

$()何が生成されるのか?実際、$()=jquery() の場合、jquery オブジェクトが返されることを意味します。

$(this) は、click()# などの jquery メソッドを呼び出すことができる jquery オブジェクトです。 # #、keyup()

$(function () {
    $('button').click(function () {
       alert(this);//this 表示原生的DOM
       //$(this)表示当前对象,这里指的是button
   }) 
});
結論:


this、現在のコンテキスト オブジェクトが html# を呼び出すことができる html DOM オブジェクトであることを示します。 ## object それが持つプロパティとメソッド。 $(this)
で表されるコンテキスト オブジェクトは、jquery のメソッドと属性値を呼び出すことができる jquery のコンテキスト オブジェクトです。 プログラミング関連の知識について詳しくは、

プログラミング学習

をご覧ください。 !

以上がjQuery の this と $(this) の違いは何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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