我在编写复杂的应用程序时,我的jQuery代码更有效率。 有没有办法让这段代码更好用?多个parent()
函数肯定不是最佳选择!
这是我的jQuery代码(在文档就绪代码之外):
$(".icon .remove a").click(function (m) {
m.preventDefault();
var caption = $(this).parent().parent().children("a").children(".caption").contents().text();
confirm("Are you sure you want to delete "+caption+"?");
});
这是有问题的HTML:
<div class="icon">
<span class="config"><a href="#"><i class="icon-cog"></i></a></span>
<span class="remove"><a href="#"><i class="icon-remove-sign"></i></a></span>
<a href="#">
<span class="image"><img src="https://si0.twimg.com/profile_images/3653636892/753cd0095b234e216b1ffc50911a0203_bigger.png" alt="ProbabilityWolf"></span>
<span class="caption">ProbabilityWolf</span>
</a>
</div>
我认为必须有一种简化获取标题的方法!这里称为“图标”的位重复多次,并且总是有不同的标题,但总是具有相同的结构。
答案 0 :(得分:3)
您可以使用.closest()
和选择器来查找元素。
var caption = $(this).closest(".icon").find("a .caption").text();