2

jqueryで[0]を介して選択しても、視覚効果が機能しないのはなぜですか?

$("p")[0].slideUp(); /* it does not work*/
$("p").eq(0).slideUp(); /* it works */

前述のように、最初のpを選択する方法は他にもいくつかありますが、上記のコードが機能しない理由を知りたいと思っています...

前もって感謝します、

4

4 に答える 4

2

.slideUp()はjQueryメソッドであり、jQueryオブジェクトで機能します。

$("p").eq(0)メソッドを持つjQueryオブジェクトを生成します.slideUp()(したがって、機能します)。

$("p")[0]を持たないDOMオブジェクトを生成します。slideUp()メソッド(したがって、機能しません)。

于 2012-07-20T06:30:04.100 に答える
1

$("p")[0]jQueryオブジェクトを生のNode要素に変換すると、そのようなjQueryメソッドを呼び出すことはできませんslideUp()。ただし、これeq(0)はjQueryメソッドであり、最初のp要素を選択してjQueryオブジェクトを返します。

于 2012-07-20T06:28:59.200 に答える
0

[0]eq(0)は同等ではありません。[0]元のDOM要素を取得しeq(0)、コレクションを最初の一致に減らします。

于 2012-07-20T06:30:34.660 に答える
0

$("p")[0].slideUp();jQueryオブジェクトで はなく要素を提供するため、ここではjQueryメソッドは機能しません。

だが、

$("p").eq(0).slideUp();ここでは、jQueryメソッドが機能するjQueryオブジェクトとしてeq(0)最初のものを返します。p

slideUp()は、rawノード要素ではなくjQueryオブジェクトでのみ機能するjQueryメソッドです。

于 2012-07-20T06:30:47.173 に答える