jQuery show element使用Data属性Selector

Adj*_*jit 0 jquery

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

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

<div class="container">
    <div data-line="2">Two</div>
</div>
Run Code Online (Sandbox Code Playgroud)

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

$('.container div[data-line="2"]').show();
Run Code Online (Sandbox Code Playgroud)

所以你们了解背景......

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

Jay*_*ard 6

这是因为您将容器div设置为不显示 -

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

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

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