我有一个弹出窗口,要求用户填写一张表格。一旦表单提交,我需要带他们到一个“等待”屏幕内的同一弹出,而他们的信息被检查。这是一个原型,所以它只需要延迟大约5秒,因为没有任何实际的检查。然后,我想在延迟之后自动关闭弹出窗口,而不是使用附加在按钮上的window.close();。
下面是我使用的脚本:(编辑以删除内联js)
function centeredPopup(url,winName,w,h,scroll){
LeftPosition = (screen.width) ? (screen.width-w)/2 : 0;
TopPosition = (screen.height) ? (screen.height-h)/2 : 0;
settings =
'height='+h+',width='+w+',top='+TopPosition+',left='+LeftPosition+',scrollbars='+scroll+',resizable'
popupWindow = window.open(url,winName,settings)
}
$('#linkPopup').click(function(){
$(this).click(centeredPopup("popup.php","Popup Name","680","560"));
if(window.location.href=='popup_waiting.php'){
setTimeout(function() {
close.window();
}, 5000);
}
});我如何解雇弹出窗口:
<a class="button" id="linkPopup">Popup Link</a>使用上面的代码,表单只是提交给等待屏幕,但在指定的持续时间后不关闭它,所以我假设我的语法或结构有问题。
预期行为:

发布于 2014-01-27 22:04:17
下面是一个柱塞:http://plnkr.co/edit/EAWf6EPauBuz36Wu8Erk?p=info
首先,考虑这为什么不应该使用内联javascript。
为了打开弹出窗口,您可以使用:
window.open(strUrl,strWindowName,strWindowFeatures);
弹出窗口打开后,可以用
您需要设置一个计时,等待5秒,然后关闭弹出窗口
Window.setTimeout( param1,param2,.);
发布于 2014-01-29 16:35:54
我通过在等待页面弹出中包含以下内容来解决这个问题:
<script type="text/javascript">
$(document).ready(function() {
setTimeout(function(){
window.opener.location.href = "parentpage.php";
window.close();
}, 2000);
});
</script>这就行了。
https://stackoverflow.com/questions/21392110
复制相似问题