javascript - 页面完全加载后关闭窗口

标签 javascript firefox

我正在尝试编写一个适用于 Firefox 5.0 的 JavaScript 函数。我需要页面完全加载,然后关闭。我想做的是:

var temp = window.open(link);

temp.window.onload = function () {
    temp.window.close();
}

但到目前为止,它所做的只是打开新标签页,而不是关闭它。

有什么方法可以成功实现吗?

最佳答案

首先,如果链接不在同一个域中,由于同源策略,您将无法关闭窗口。

使用 addEventListener 监听 onload 事件

var temp = window.open(link); 
temp.addEventListener('load', function() { temp.close(); } , false);

如果你需要支持旧的 IE 而不是你需要 attachEvent

var temp = window.open(link); 
temp[temp.addEventListener ? 'addEventListener' : 'attachEvent']( (temp.attachEvent ? 'on' : '') + 'load', function() { temp.close(); }, false );

点击网页无需开窗。

您可以:

  • 发出 Ajax 请求 - 必须是同一个域
  • 设置一个隐藏的iframe
  • 设置图片来源

关于javascript - 页面完全加载后关闭窗口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26888780/

相关文章:

javascript - contentEditable DIV 中的大量替换

javascript - 获取 Canvas 内矩形的光标位置

python - 使用 selenium (Python) 轮换服务器 IP

javascript - Firefox 52 javascript 滚动触发事件滞后

c# - 从 Firefox 扩展到 C# 应用程序的通信

CSS3 unicode-range 在 Firefox 中不起作用

javascript - FabricJS 自定义过滤器插件在向图像添加过滤器时可以工作,但无法通过 JSON 加载 Canvas

javascript - 为什么 gzip 后的 html 文件显示时没有 JS 和 CSS?

javascript - 可以使用 fancybox 全屏打开图片的 slider

firefox - 小程序部署javafx 2.2、firefox、ubuntu