setTimeout("'return_list("+key_id+")'",10000);这样写不执行,setTimeout("return_list()",10000);不带参数就可以

解决方案 »

  1.   

    可通过闭包或者重载setTimeout来实现,
    最简单的方式是使用全局变量,这样不安全。
      

  2.   

     var repeat ="moveing('"+id+"',"+target_x+","+target_y+","+t+")"; 
     var movment = setTimeout(repeat,t);
    这种方式也可以
      

  3.   


    var key_id = 1;function return_list(a){
        alert(a);
    }setTimeout(function(){
        return_list(key_id);
    }, 1000);
      

  4.   

    写匿名函数吧setTimeout(function(){
        return_list(key_id);
    },10000);