[英]jquery - get div from a li
我是javascript / jquery的新手。 我正在尝试从li
元素中选择一个div
,我将放置3张图像。 所以我有这个变量:
var x = ui.item.parent().children()[i]
li
是哪一个(它起作用了,我已经检查了id),但是如何从x
获得div? (然后所有3张图片,这样我就可以更改图片的z-index
,我也不知道如何)。
<ul>
<li id="li1">
<div>
<img class="1" src="img1.jpg" style="position:absolute;z-index=1">
<img class="2" src="img2.jpg" style="position:absolute;z-index=2">
<img class="3" src="img3.jpg" style="position:absolute;z-index=3">
</div>
</li>
</ul>
这是我编写的代码,但是不起作用(错误:Uncaught TypeError:对象#没有方法'find')
for(var i=0;i<ui.item.parent().children().length-4;i++){
var x =ui.item.parent().children()[i];
x.find('img').css('z-index', '2');
}
请更正您的html。 你的ul在你li之前就结束了。 一旦有了jQuery元素,就可以使用.find()函数搜索其子级。
例如:
var x = $('li#yourid');
x.find('img').css('z-index', '2');
您的HTML无效,您将在ul
和li
没有打开标签<
之后关闭li
标签。
因此正确的HTML是:
<ul>
<li id="li1">
<div>
<img class="1" src="...">
<img class="2">
<img class="3">
</div>
</li>
<ul>
现在要从x获取div,您需要使用.find()
:
var div = x.find('div');
我不知道HTML是否只是一个示例,但其格式不正确。 它应该是:
<ul>
<li id="li1">
<div>
<img class="1" src="..."/>
<img class="2"/>
<img class="3"/>
</div>
</li>
</ul>
设置z-index:$(x).find('img')。css('z-index','100');
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.