我很想知道,我知道$(selector)会返回一个jQuery对象,但是我说身体中有一系列div,例如:
<body>
<div> </div>
<div> </div>
<div> </div>
</body>
当我尝试$(“div”)时,jQuery应该返回一个类似于div数组的jQuery对象,但是当我尝试指定某个div如$(“div”)[1]时,这不是一个jQuery对象?如果不是,我知道我不能使用.css()那么如何更改我需要动态确定的特定div的css?
答案 0 :(得分:6)
$("div")
返回一个DOM元素数组。 $("div")[1]
获取页面上的第二个元素,作为DOM元素。要将其恢复为jQuery对象,可以执行$($("div")[1])
。
我不建议你这样做。您可以使用:eq()
selector获取所需的div。
$("div:eq(1)")
或者,您可以使用.eq()
function。
$("div").eq(1)
答案 1 :(得分:5)
您需要使用.eq
http://api.jquery.com/eq/
$("div").eq(1)
答案 2 :(得分:4)
您可以使用jQuery eq来获取集合中的jQuery包装元素。 即
$("div").eq(1).css()
答案 3 :(得分:0)
尝试这样做:
$($("div")[1]).css()
答案 4 :(得分:0)
$("div")[1]
不是jQuery对象。您甚至可以在此页面上的浏览器JavaScript控制台上测试它。您可以再次使用$
功能进行设置,以便css
可以使用:
$($("div")[1]).css("hello", "world");
或者,如果您的示例是您确实需要做的事情,请执行此操作:
$("body > div:nth-child(2)").css("hello", "world");