<script> 
var _st = window.setTimeout; 
window.setTimeout = function(fRef, mDelay) { 
 if(typeof fRef == 'function'){ 
  var argu = Array.prototype.slice.call(arguments,2); 
  var f = (function(){ fRef.apply(null, argu); }); 
  return _st(f, mDelay); 
 } 
 return _st(fRef,mDelay); 

function test(x){ 
 alert(x); 

window.setTimeout(test,1000,'fason'); 
</script>

解决方案 »

  1.   

    例如,这样调用就没有延迟了,
    window.setTimeout(test("Terry"),5000); 
      

  2.   

    eval('setTimeOut("showValue(\''+theLink+'\')",2000)');
      

  3.   

    <script language=javascript>
    var oLink;
    function testTimeOut(theLink)
    {
      oLink=theLink;
      setTimeOut(showValue,2000);}function showValue()
    {
        alert(oLink.href);}
    </script><A HREF="http://www.sina.com.cn" name="theLink" onmousedown="javascript:testTimeOut(this);">鼠标按下</A>