我有一个交互式程序,用户将一个明确源词的一系列翻译一个接一个地调用到Google翻译中处理的语言。 用户不需要自己关闭子窗口。一旦用户注意到他的结论,这取决于谷歌翻译产生的翻译类型。 我已经尝试了几个星期来解决程序报告在程序应该执行page.close()之后无法关闭certian窗口的问题。 我现在接近解决方案,我认为,浏览器需要一些时间来关闭,之后只能检测到窗口关闭。 基本上仍然不符合我的意愿的代码读
function loadpage() {
page=window.open("url-code for calling specific translation by GT", "GT", "scrollbars=1, resizable=1, height=400, top=200, left=300, width=400", true);
}
function crucial() {
page.close();
setTimeOut(function() {
if (page.closed) {
alert("succesful closing");
} else {
alert("The window can't be closed!");
}
}, 5000);
}
唉!这两个警报都没有显示出来。在某些情况下,根据延迟时间?,窗口关闭。
我从Bergi那里通过if(!page.closed)查看延迟函数内部的建议不起作用。
什么工作似乎必须满足以下条件:
1.声明setTimeOut函数。
2.在格式函数(){alertcheck()}中创建函数优先
(延迟时间似乎无关紧要;无论如何,它甚至可以正常工作。)
var timeoutID;
function preferential() {
timeoutID = window.setTimeout(function(){alertcheck()}, 0);
}
function alertcheck() {
if (page.closed) {
alert("succesful closing");
} else {
alert("The window could not be closed!");
}
}
为什么这对我很感兴趣。至少我希望,读者可以用相同的结果重复这个实验。
答案 0 :(得分:0)
程序报告在程序应该执行page.close()
之后无法关闭certian窗口
关闭的窗户无法关闭。你应该总是使用
if (!page.closed)
page.close();