[英]Unblock window.open pop-up?
由於一個非常笨重的CMS的限制,我無法使用
target="_blank"
在新窗口中打開鏈接。 所以我在想,我唯一真正的解決方案是將鏈接指向打開新窗口的中間頁面,然后將當前窗口重定向回原始頁面...如下所示:
window.open ("http://www.NewPage.com/");
window.location = "http://www.OldPage.com/";
當然,大多數瀏覽器都會阻止window.open方法...所以我有什么選擇? 當然,有一些聰明的Javascript技巧可以解決此問題。
沒有選擇。 您不能這樣做,並且有充分的理由。
當調用它的代碼正在處理諸如“ click”之類的事件時,瀏覽器將僅允許window.open()
工作。 在這種情況下,瀏覽器假定頁面提供了一個可單擊的元素,並且用戶知道會有一個彈出窗口。 如果頁面只是從某些上下文(如直接的腳本代碼),或在“就緒”或“加載”事件處理程序或XMLHttpRequest回調中為新窗口調用window.open()
,則瀏覽器會認為彈出窗口可能令人討厭。
某些瀏覽器允許用戶放寬這些規則,但是您的代碼無法強制這樣做。
您可能只需要在頁面上插入一個iframe,然后將其放置在所有內容上,但是我真的不建議這樣做。
在一天結束時,瀏覽器將控制是否允許window.open
,因此我不會費心尋找解決方案。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.