Javascript &引用;选择";使用jquery两次?
我不知道该如何表达这个问题,所以我在网上找不到任何关于它的信息,但有什么理由要用jquery“选择”一个元素两次呢?我试图理解的一个应用程序中包含了多个这样的例子Javascript &引用;选择";使用jquery两次?,javascript,jquery,Javascript,Jquery,我不知道该如何表达这个问题,所以我在网上找不到任何关于它的信息,但有什么理由要用jquery“选择”一个元素两次呢?我试图理解的一个应用程序中包含了多个这样的例子 var t = $($("#slider li")[currentIndex]); IPS.SetTheme($($("#slider li")[currentIndex])); $($("#location li")[currentIndex]).addClass("selected"); 这与为什么出于作用域原因而偶尔将这个写为
var t = $($("#slider li")[currentIndex]);
IPS.SetTheme($($("#slider li")[currentIndex]));
$($("#location li")[currentIndex]).addClass("selected");
这与为什么出于作用域原因而偶尔将
这个写为$(this)
类似吗?$(选择器)[index]
返回裸DOM元素,因此需要用$()
包装它以获得jQuery对象。我有点困惑。但是让我来帮你
那么关于这个,
var t = $($("#slider li")[currentIndex]);
var t是一个jQuery对象。因此,您可以:
t.hide(); // to hide the element
t.show(); // to show the element
t.css("color", "red"); // to make the text color red
我们在这里讨论的是索引。您可以了解以下方面的更多信息:
例如,我们有以下HTML代码:
<ul id="slider">
<li>foo</li>
<li>bar</li>
<li>baz</li>
</ul>
这将导致:
<ul id="slider">
<li>bar</li>
<li>baz</li>
</ul>
- 酒吧
- 巴兹
指数呢
<ul id="slider">
<li>foo</li> index 0
<li>bar</li> index 1
<li>baz</li> index 2
</ul>
- foo
索引0
- 条形图
索引1
- baz
指数2
您不需要重新绘制对象两次
您可以使用:eq()jquery选择器将装饰集限制为单个装饰:
-例如:
如果您只想通过索引选择对象,则应该采用这种方式。更高的性能(少了一个装饰)和最佳实践。我相信他知道这一点。他正在寻找避免双重装饰的方法。eq选择器避免了这一点在这个上下文中裸DOM元素和jQuery对象之间有什么区别?所以区别在于裸DOM元素不能用jQuery方法更改?好的,谢谢。我觉得在阅读jQuery时,我从来没有提到过这一点,但我并没有完全阅读过所有内容。
<ul id="slider">
<li>foo</li> index 0
<li>bar</li> index 1
<li>baz</li> index 2
</ul>
$("#myId:eq(" + myIndex + ")")