第一次执行的是show()是对的,只是你javascript代码写在了dom元素前面,jquery的选择器没法获取到dom元素,所以还是隐藏的,你可以将这段javascript代码写在div的后面,或者在这段javascript上包裹$(function(){})  这个dom加载函数

解决方案 »

  1.   

     window.setInterval('1000', aa());一般只使用一次LZ把setInterval 与setTimeout搞混了
      

  2.   

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
        <script type="text/javascript">
            var i = 500;
            $(
             function aa() {             if (i <= 0) {
                     alert(1); //为什么第一次会执行这里,而且第一次不是应该show了吗,怎么还是hide呢
                     $("#D1").hide();
                 }
                 else {
                     $("#D1").show();
                     i--;
                     window.setInterval('1000', aa());
                 }
             }        );
                
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <div id="D1" style="display:none;">D1------</div>         
        </div>
        </form>   
    </body>
    </html>
    加过的,但是还是一样,不行啊
      

  3.   

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head id="Head1" runat="server">
        <title></title>
        <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
        <script type="text/javascript">
            var i = 5;
            var p;
            function aa() {            if (i <= 0) {
                    $("#D1").hide();
                    clearInterval(p);
                }
                else {
                    $("#D1").show();
                    i--;
                }
            }
            p = setInterval(aa, 1000);
                 
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <div id="D1" style="display: none;">
                D1------</div>
        </div>
        </form>
    </body>
    </html>
      

  4.   


    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
        <script type="text/javascript">

    $(function(){
    var i = 5;
     
            function aa() {
     
                    if (i <= 0) {
    console.log("lt0",i);
                        alert(1);//为什么第一次会执行这里,而且第一次不是应该show了吗,怎么还是hide呢
                        $("#D1").hide();
                    }
                    else {
    console.log("gt0",i);
                        $("#D1").show();
                        i--;
                        window.setTimeout('1000', aa());
                    }
                }
     
                window.setTimeout('1000', aa());
    })
            
                 
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <div id="D1" style="display:none;">D1------</div>
        </div>
        </form>
    </body>
    </html>
    对LZ有种捉急感
      

  5.   

    多谢,原来是我 setInterval(aa, 1000);参数写反了
      

  6.   

    是你的间隔循环调用函数用错了,我帮你把例子重写了,你看看<html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
        <script type="text/javascript" src="Scripts/jquery-1.4.1.min.js"></script>
        <script type="text/javascript">
            var i = 5;
     $(function(){
         
     aa();
     });
            function aa() {                if (i <= 0) {
                        alert(1);//为什么第一次会执行这里,而且第一次不是应该show了吗,怎么还是hide呢
                        $("#D1").hide();
                    }
                    else {
                        $("#D1").show();
                        i--;
                        setTimeout("aa()",3000);
                    }
                }
     
                //window.setInterval('10000', aa());
                 
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <div id="D1" style="display:none;">D1------</div>
        </div>
        </form>
    </body>
    </html>