我的HTML代码如下:
<div class="listitems">
user1@mail.com
<a style="float: right;vertical-align: top;" data-recom-user="3" data-recom-mile="4">
<i class="icon-eye-open"></i>
</a>
<i style="float: right;vertical-align: top;" data-irecom-done="false" data-irecom-user="3" data-irecom-mile="4" class="icon-hand-up" title="Recommend this user"></i>
</div>
我在<a>
的事件处理函数中有触发点击事件我想访问最近的<a>
我试过$(this).closest("<i>")
,我得到<i class="icon-eye-open"></i>
我怎么能
<i style="float: right;vertical-align: top;" data-irecom-done="false" data-irecom-user="3" data-irecom-mile="4" class="icon-hand-up" ></i>
元素,以便我可以改变它的一些属性。
答案 0 :(得分:3)
根据您的HTML标记,您可以改为使用siblings()或next():
$(this).siblings('i')
或:
$(this).next()
另外,请注意closest()
将遍历DOM树,此方法不用于查找子元素
答案 1 :(得分:2)
获取内部锚标记:
$(this).find("i")
对于兄弟姐妹:
$(this).siblings("i")
答案 2 :(得分:0)
$(this).closest("<i>")
<i class="icon-eye-open"></i>
$(this).find("i .icon-hand-up")
<i style="float: right;vertical-align: top;" data-irecom-done="false" data-irecom-user="3" data-irecom-mile="4" class="icon-hand-up" ></i>
$(this).find("i .icon-hand-up").attr('','') ; // you can change the attribute
或
$(this).parent().find("i:last").attr('','');
答案 3 :(得分:0)
$(document).ready(function () {
$(".listitems a").click(function () {
var sss = $(this).find('i');
alert(sss.text());
});
});