日期:2014-05-18  浏览次数:20996 次

javascript 如何使页面关闭延迟2秒.
代码:
<body   onUnload= "javascript:overcall(); "/>

function   overcall()     //结束对话
{      
        Jcall.overCall( "123 ", "456 ");//DWR调用服务器方法
}
</script>

      我在关闭页面时利用onUnload关闭事件,调用服务器java方法.方法无返回值!

我总感觉调用都还没有成功页面都已经关闭了.造成服务器方法没有执行.   想在窗口关闭时延迟1-2秒来解决这个问题.请问如何在这个事件里面做延迟或是别的好方法?  


------解决方案--------------------
function a(){
alert( 'sleep ');
setTimeout( "a() ",2000);//单位毫秒

}

------解决方案--------------------
setTimeout
------解决方案--------------------
<body onUnload= "setTimeout( 'overcall() ', 2000) ">
...
------解决方案--------------------
setTimeout
------解决方案--------------------
setTimeout

------解决方案--------------------
window.onbeforeunload = function(){
setTimeout( "closeWin() ",2000);
return false;
}
function closeWin(){
window.open();
window.close();
}
这段代码不能完全实现你要的效果。
肯定的是body不能完成这项任务。
建议,在window.onbeforeunload事件前打开一个新的窗体,来调用一个方法,再把子窗体关掉。如有更好的方法,请告诉我sunkaihan@126.com