1

我有一个里面ul有项目的元素。li这些li项目没有任何可以用作直接选择器的属性集(没有类集,没有 id,也无法设置这些)。根据特定链接中的值li,我想隐藏该元素。因此,在下面的示例中,我想将 的 css 设置lihref='link4'隐藏。

我将如何编写选择器来获取这个元素?我尝试了许多变体,包括 `has([href='link4']),我认为这会起作用,但没有运气。

感谢帮助。

<ul id="mylist">
    <li><a href="link1">link1</a></li>
    <li><a href="link2">link2</a></li>
    <li><a href="link3">link3</a></li>
    <li><a href="link4">link4</a></li>
</ul>   
4

4 回答 4

1
$(function() {
    $('#mylist li').has('a[href=link4]').hide();
    //  $('#mylist li:has("a[href=link4]")').hide();
    //  $('#mylist li).eq(3).hide();
});

http://jsfiddle.net/LQdnG/

于 2013-03-02T06:25:24.470 回答
0

试试这个:

$("#mylist li:contains('link4')").hide();

于 2013-03-02T06:25:37.973 回答
0

使用 has 你可以做到这一点,

  $('#myList li').has('a[href=link4]').hide()` 
于 2013-03-02T06:26:22.067 回答
0

试试这个:

var anchor4=$('#mylist li a[href="link4"]')

你会在上面的变量中得到一个标签的对象。隐藏它的第一个父 li,你可以这样做。

$(anchor4).closest('li').hide();
于 2013-03-02T06:26:48.747 回答