延迟页面关闭Javascript?

时间:2011-12-02 00:13:37

标签: javascript delay

现在,我知道延迟页面关闭是不好的做法,并且有更好的方法来处理这类内容,但仅供将来参考,有没有办法延迟页面关闭?像

这样的东西
window.onunload = unload();

function unload()
{
setTimeout("self.close()", 1000)
}

谢谢!

1 个答案:

答案 0 :(得分:10)

如果您确实需要(即准备采用半黑客)延迟关闭页面而不显示确认对话框等,您可以执行以下操作:

function delay(ms) {
    var start = +new Date;
    while ((+new Date - start) < ms);
}

// start image loading (I assume you need this for tracking?)
delay(150);

警告很明显:它不会一直有效,你不能拖延太久。话虽这么说,如果你真的对此感兴趣,你可能会得到超过95%的结果(实际上取决于服务器的响应时间)。