[英]How do you detect if a popup to another domain was blocked in Chrome?
您可以使用以下問題的解決方案來檢測 Chrome中是否已阻止彈出窗口 : 檢測Chrome中被阻止的彈出窗口
但是,似乎可以檢測到該解決方案是位於同一域上的頁面的彈出窗口。 我想知道是否有一種方法可以檢測另一個域上的頁面彈出窗口是否被阻止?
var newWindow = window.open('http://www.google.com/'); // this domain is something.com
if (newWindow) {
setTimeout(function() {
// Is there a way to detect if newWindow was blocked?
}, 500);
}
您將受到所有相同的原產地政策的約束,我建議您直接閱讀它們: http : //en.wikipedia.org/wiki/Same_origin_policy 。 簡而言之,您正在嘗試進行跨域通信,這是瀏覽器的安全模型所禁止的。 為了解決這個問題,有服務器端代理,JSONP,Flash,document.domain(但僅當這是兩個不同的子域時),並且有一系列黑客根據您的支持要求和您的實際需求而取得不同的成功試圖做。
您能否告訴我們更多有關您的瀏覽器支持要求的信息? 您可以使用XHR Level 2嗎? 您要在彈出窗口中加載的頁面是什么?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.