如果将窗口作为选项卡打开,则window.close不起作用(Firefox 47)

Too*_*ool 7 javascript firefox

var google_login_popup = "";

var social_google_login = function () {

    google_login_popup = window.open('www.google.com', "google_popup", 'width=800, height=600');

};

social_google_login();

setTimeout(function() {
  google_login_popup.close();
}, 1000);
Run Code Online (Sandbox Code Playgroud)

它会在新的TAB中打开弹出窗口 - 而不是窗口.但.close()不会关闭窗口.

这应该工作,因为打开窗口的脚本也试图关闭它.

请注意,这仅适用于Firefox 47,移动版.

视频:https://www.dropbox.com/s/bqcf8iwm5bsw4yn/VIDEO0254.mp4?dl = 0.

Jim*_*ine 1

我在移动设备(Android 5.1.1、Moto G)上的 Firefox 47 中对此进行了测试,但无法在骨架网页中使用您的代码复制该行为。然而,查看视频并查看https://cdn.dorms.com/static/js/social.js中的代码,显然不仅仅是您在此处提供的代码。

\n\n

给设备持有者的建议

\n\n
    \n
  • 尝试一些框架代码或使用我的页面https://www.dropbox.com/s/db08g2gmn9s8i89/38216372.html?dl=0 \xe2\x80\xa0 看看是否可以重现该问题。
  • \n
  • 在弹出 URL 前面加上http://https://和/或延长超时时间。我非常怀疑这会有帮助,但可能会发生一些奇怪的事情。
  • \n
  • 如果设备所有者同意,请重置 Firefox 应用程序。清除应用程序数据并重新启动,只是为了确保没有潜伏的东西。
  • \n
  • Firefox 移动版确实具有 USB 和 Wi-fi 远程调试功能 - 在“设置”>>“高级”>>下检查,滚动到底部“了解更多”。这确实可以节省尝试调试的时间。
  • \n
\n\n

\xe2\x80\xa0 我的页面包含以下 HTML:

\n\n
<!DOCTYPE html>\n<html>\n<head>\n<title>Test web page</title>\n<script>\nvar google_login_popup = "";\nvar social_google_login = function () {\n\n    google_login_popup = window.open(\'www.google.com\', "google_popup", \'width=800, height=600\');\n\n};\nsocial_google_login();\nsetTimeout(function() {\n  google_login_popup.close();\n}, 1000);\n</script>\n</head>\n<body>Test web page</body>\n</html>\n
Run Code Online (Sandbox Code Playgroud)\n