0

次のコードでは、なぜ「this」を$関数で囲む必要があるのですか?

var x = $('div');
x.click(function(){
    $(this).hide();
});

'this'は、それ自体がjQueryオブジェクトである式xを参照しているだけではありませんか?

4

3 に答える 3

5

の値はthis、クリックされた要素を表すDOMノードになります。$(this)そのDOMノードをラップし、、など.show()の追加機能を提供するjQueryオブジェクトになります。.append()

于 2013-02-19T17:37:08.350 に答える
1

いいえ:ドキュメントthisで指定されているように、ラップされていないDOM要素です:

上記のように、ハンドラーパラメーターはコールバック関数を取ります。ハンドラー内で、キーワードthisは、ハンドラーがバインドされているDOM要素を参照します。jQueryの要素を利用するために、通常の$()関数に渡すことができます。

于 2013-02-19T17:37:32.463 に答える
0

これはdivを参照します...つまり、クリックするとdivが非表示になります。

これは常にその文脈で何を参照します。

于 2013-02-19T17:37:49.367 に答える