jQuery show element使用Data属性Selector

时间:2014-06-12 21:48:25

标签: jquery

似乎无法使用data属性作为选择器显示div。

显示容器,但没有任何行。

<div class="container">
    <div data-line="2">Two</div>
</div>

使用下面的选择器,它不起作用

$('.container div[data-line="2"]').show();

所以你们了解情况......

$(document).ready(function(){
    for(i = 0; i < 10; i++){
        $('.container div[data-line="'+ i + '"]').show();
    }
});

2 个答案:

答案 0 :(得分:6)

这是因为您将容器div设置为none -

div {
    width: 100%;
    line-height: 30px;
    background: grey;
    border: 1px solid red;
    text-align: center;
    /*visibility: hidden;*/
    display: none; // here is the issue
}

一个简单的解决方法是将您的CSS选择器更改为div > div {...基本上您正在显示子项,但由于隐藏了父项,因此子项也将继续隐藏。

http://jsfiddle.net/jayblanchard/xS39F/2/

答案 1 :(得分:2)

只需将您的css从div {}更改为.container div {}并完成。