25

ここで提案されているように、 jQuery:first:visible疑似セレクターを使用してリストの最初の可視要素を取得しようとしています: https://stackoverflow.com/a/830611/165673しかし、機能していません:

フィドル: http://jsfiddle.net/FAY9q/4/

HTML:

<ul>
    <li>Item A</li>
    <li>Item B</li>
    <li>Item C</li>
</ul>
<ul>
    <li style="display:none;">Item A</li>
    <li>Item B</li>
    <li>Item C</li>
</ul>

Jクエリ:

$('li:visible:first').css('background','blue');

各リストの最初の項目が青色に変わるはずです...

4

3 に答える 3

54

これを使用してみてください:

$('ul').find('li:visible:first').css('background','blue');

現在、コードはliページで最初に表示される要素を取得し、背景色を設定しています。このコードは、すべての要素を選択し、各要素内でul最初に表示される要素を見つけliてスタイルを適用します。

ここで動作しています: http://jsfiddle.net/FAY9q/5/

于 2013-08-10T14:14:08.607 に答える
0

これを使用するのはどうですか:

li:visible:not(:visible ~ :visible)
于 2014-08-19T19:43:58.530 に答える
-1
$('li:visible').eq(0).css('background','blue');
于 2013-08-10T14:16:24.890 に答える