我可以在页面重定向后执行setTimeOut()吗?

时间:2016-07-29 11:58:21

标签: javascript jquery redirect settimeout

为什么不复制:在之前的帖子中没有回答问题。

我有一个删除链接,点击后会触发一个包含按钮的弹出窗口。当我单击该按钮时,页面(在弹出窗口内)将被重定向到新的内部页面。我想要实现的是弹出窗口应该在重定向发生后1秒后关闭。单击按钮时应用了该功能,该功能仅在“弹出重定向”之前可用。

    $('.page-user-cancel .btn').click(function(e) {
    window.onunload = refreshParent;
    setTimeout( function(){
        function refreshParent() {
        window.opener.location.reload();
        window.close();
        }
    }  , 1000 );
}); 

如果我不清楚,请发表评论。英语不是我的母语。

修改

如果这不可行,是否可以在新页面上的div(重定向后)加载时触发该功能?

更新

这不起作用:

var dival = $('.inside .alert').length;
if (dival > 0){
    window.onunload = refreshParent;
    function refreshParent() {
        window.opener.location.reload();
        window.close();
        }
}
else{}

只有在刷新后才有效。

搞定了:必须删除refreshParent的函数调用。可能不是最好的做法,但它正是这样做的。

1 个答案:

答案 0 :(得分:0)

第一部分是不可能的,因为重新加载页面并不会使前一页的JavaScript保持运行。

第二部分更好。是的,您可以处理页面加载:

$( document ).ready(function() {
  // Check your div here
});