0

内部jQueryを使用してランダムなhtmlページを作成しています。jQueryで3つの段落のうち2つを非表示にし、これを5秒間実行しようとしていますが、htmlファイルをロードすると、すべての段落がすぐに表示されます. 誰でも助けることができますか?

<html>
    <head>
        <script src="jquery-1.9.1.js"></script>
    </head>
    <body>
        <script>
            var $ = jQuery;
            $("p").each(function (idx) {
                if(idx >= 1) {
                    $(this).hide(500);
                }
            });
        </script>
        <p>This is the first paragraph</p>
        <p>This is the second paragraph</p>
        <p>This is the third paragraph</p>
    </body>
</html>
4

2 に答える 2

5

$()要素がまだロードされていないため、コードをラップする必要があります。

$(function(){
    $("p:not(:first-child)").hide(5000);
});

 TRY-A-DEMO

また、 5秒500なのでタイプミスだと思います。5000

@David Thomasが示唆したように、次のようにさらに単純化できます。

$(function(){
    $("p:gt(0)").hide(5000);  //:gt means "greater than..."
});
于 2013-03-24T23:26:31.783 に答える
0

必ず DOM Ready イベントを待ちます:

$(document).ready(function() {
  // your code
});
于 2013-03-24T23:26:14.780 に答える