下面的程序不能循环运行,如果scroller不加参数则可以循环运行,这是为什么
<HTML>
<HEAD>
<div id=div1></div1>
<script language="javascript">
var i=1;
var handle;
function scroller(ddd)
{
alert(ddd);
handle=setTimeout("scroller(ddd);",2000);

}
function stop()
{
clearTimeout(handle);
}
</script>
</HEAD>
<body>
<input type="button" value="ok" onclick="scroller('你好')">
<input type="button" value="ok" onclick="stop()">
</body>
</HTML>

解决方案 »

  1.   

    handle=setTimeout("scroller('ddd');",2000);
      

  2.   

    handle=setTimeout("scroller('" + ddd + "');",2000);
      

  3.   

    修改成:
    <HTML>
    <HEAD>
    <script language="javascript">
    var i=1;
    var handle;
    var ddd;
    function scroller(ddd)
    {
                var ddd="你好!";
    alert(ddd);
    handle=setTimeout("scroller(ddd);",2000);
    }
    function stop()
    {
    clearTimeout(handle);
    }
    </script>
    </HEAD>
    <body>
    <input type="button" value="ok" onclick="scroller('你好')">
    <input type="button" value="ok" onclick="stop()">
    </body>
    </HTML>
     这个看看。
     问题出在 没有定义 ddd
      

  4.   

    楼上,我的ddd是一个型参,实参是'你好'
      

  5.   

    改成handle=setTimeout("scroller('" + ddd + "');",2000);
    就行了
      

  6.   

    handle=setTimeout("scroller('" + ddd + "');",2000);用这个啦