尝试使用Jquery中的prev()隐藏锚标记

时间:2015-01-20 18:05:03

标签: jquery hide

我正在尝试隐藏包含特定span元素的所有链接

<a href="some url"> <span title="show">Show</span></a>

function hideShows(){
    $("span[title='show']").prev().hide();
}

$(document).ready(function(){
      hideShows();
});

2 个答案:

答案 0 :(得分:2)

prev()会在span旁边选择一个兄弟元素。您需要parent()closest()

function hideShows(){
  $("span[title='show']").closest('a').hide();
}

function hideShows() {
  $("span[title='show']").closest('a').hide();
}

$(document).ready(function() {
  hideShows();
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<a href="some url"> <span title="show">Show</span>
</a>

<a href="#"><span title="noshow">Leave this alone</span></a>

答案 1 :(得分:2)

虽然您没有在事件处理程序中绑定代码,但您也可以这样做:

$(document).ready(function(){
    $("a:has(span[title='show'])").hide();
});