2016-07-06 39 views
7
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); 

它在新的TAB中打開彈出窗口而不是窗口。但.close()不關閉窗口。如果窗口作爲選項卡打開,則window.close不起作用(Firefox 47)

這應該是作爲腳本打開窗口也試圖關閉它。

請注意,這僅適用於Firefox 47,移動

視頻:https://www.dropbox.com/s/bqcf8iwm5bsw4yn/VIDEO0254.mp4?dl=0

+0

你檢查控制檯?是否顯示警告_「腳本只能關閉他們打開的窗口」_? – Rohit416

+0

沒有控制檯或設備,只有上述視頻作爲調試方法。 – Tool

+1

難道是因爲你失去了主窗口的焦點,所以超時從未發生過? – Kaiido

回答

1

我在移動設備(Android 5.1.1,Moto G)的Firefox 47中測試了這個功能,並且無法在骨架網頁中使用您的代碼複製行爲。然而,看看這個視頻,看看https://cdn.dorms.com/static/js/social.js中的代碼,顯然比你在SO上提供的代碼更多。

建議的人員與設備

  • 嘗試一些骨架代碼或使用我的頁面在https://www.dropbox.com/s/db08g2gmn9s8i89/38216372.html?dl=0†,看看是否可以重現該問題。
  • http://https://前加上彈出網址,和/或延長超時時間。我非常懷疑這會有所幫助,但可能會出現一些不可思議的情況。
  • 重置Firefox應用程序,如果這與設備所有者無關。清除應用數據並重新開始,只是爲了確保沒有潛在的東西。
  • Firefox移動設備具有USB和Wi-Fi遠程調試功能 - 請在設置>>高級>>下滾動到底部以「瞭解更多」。這將真正節省試圖調試的時間。

†我的頁面包含以下HTML:

<!DOCTYPE html> 
<html> 
<head> 
<title>Test web page</title> 
<script> 
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); 
</script> 
</head> 
<body>Test web page</body> 
</html> 
相關問題