2

クラスが".hidden"あり、DOM要素をリアルタイムで構築します。だから私は次のような単純なコードを取得します:

...
    <div class="hidden">1</div>
    <div class="hidden">2</div>
    <div class="hidden">3</div>
...

私のCSS定義は単純ではありません。

.hidden {
display: none;
}

.hidden:first-child {
display: block;
}

すべてが良いです誰もが幸せです。今、私が次のようなことをすると:$('.hidden:first-child').remove()それは削除されますが、次の要素は表示されません。開発者コンソール(chromeではctrl + shift + i)でDOMノードをクリックしたときにのみ表示されるようです。

ブラウザにCSSルールを評価させる方法について何か考えはありますか?

更新 これはjsFiddleテストケースです。ボタンをクリックすると「0」が表示されます。別の番号はありません。「1」、「2」のようになります。

結論: 不思議なことに、remove()の前にfadeOut(400)を削除した場合は機能します。

4

2 に答える 2

2

:first-childの代わりにcss pseudoclass:first-of-typeを使用してみてください

これがjsFiddleの実例です:http://jsfiddle.net/jukDU/3/

于 2012-04-12T13:59:19.947 に答える
0

最初に次のアイテムを表示してから削除します。

$('.hidden:first-child').next().show();
$('.hidden:first-child').remove();
于 2012-04-12T13:56:45.753 に答える