setInterval 的不当使用

Inappropriate use of setInterval

<html>
    <head>
        <script type="text/javascript" language="JavaScript">

            var inter;
            var seconds = 1;

            function recharge() 
            {
                inter = window.setInterval( "printA()" , 1000 );
            }

            function printA()
            {
                document.write( "you are here: " + seconds + " seconds" );
                seconds++;
            }
        </script>

    </head>
    <body>
            <button onclick="recharge();"> Start </button>
    </body>
</html>

我的问题是... recharge() 包含一个 setInterval() 包含一个函数 printA() 这个 这样做的功能是打印一个 document.write 一个变量,每次 recharge 被称为.. 但只打印 1 而不会打印下一个数字。我尝试使用 alert 而不是 document.write 及其工作,所以我不知道我做错了什么。我是菜鸟。感谢您的帮助。

据我了解你的问题和评论,你想打印这样的东西:

you are here: 2 seconds

you are here: 3 seconds

you are here: 4 seconds

我建议这样做:

<html>
    <head>
        <script type="text/javascript" language="JavaScript">

            var inter;
            var seconds = 1;

            function recharge() 
            {
                inter = window.setInterval( "printA()" , 1000 );
            }

            function printA()
            {
                document.body.innerHTML += "<div>you are here "+seconds+" seconds</div>";
                seconds++;
            }
        </script>

    </head>
    <body>
            <button onclick="recharge();"> Start </button>
    </body>
</html>

+= 将继续向文档附加 html。

当您 document.write() 时,整个页面都会被重写,这意味着您的所有 JavaScript 都将丢失。但是 alert() 应该可以工作-您尝试了什么? winhowes 的 innerHTML 方法可能效果最好。我也看不出 'recharge();' 应该达到什么目的。