摘要:什么情況下會彈窗被攔截當(dāng)為用戶觸發(fā)事件內(nèi)部或者加載時,不會被攔截,一旦將彈出代碼移動到或者一段異步代碼內(nèi)部,馬上就出現(xiàn)被攔截。會被攔截會被攔截解決先在回調(diào)函數(shù)之前打開新窗口,后再加載
什么情況下會彈窗被攔截
當(dāng)window.open為用戶觸發(fā)事件內(nèi)部或者加載時,不會被攔截,一旦將彈出代碼移動到ajax或者一段異步代碼內(nèi)部,馬上就出現(xiàn)被攔截。
obj.onclick = function(){ window.open(url) // 會被攔截 } obj.onclick = function () { ajax({ url: "/xxxxxx/", success: function (url) { window.open(url); //會被攔截 } }) } });解決
obj.onclick = function () { var newWindow = window.open(); //先在回調(diào)函數(shù)之前打開新窗口,后再加載url ajax({ url: "/xxxxxx/", success: function (url) { newWindow.location.href = url; } }) }
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/102703.html
摘要:原因分析深入研究當(dāng)瀏覽器檢測到非用戶操作產(chǎn)生的新彈出窗口,則會對其進行阻止。但是,被瀏覽器攔截我們代碼中要彈出的窗口并不是程序員所希望的。 現(xiàn)象 最近在做項目的時候碰到了使用window.open被瀏覽器攔截的情況,搞得人無比郁悶啊,雖然在自己的環(huán)境可以對頁面進行放行,但是對用戶來說,不能要求用戶都來通過攔截。何況當(dāng)出現(xiàn)攔截時,很多小白根本不知道發(fā)生了啥,不知道在哪里看被攔截的頁面,簡...
摘要:之前的項目,有個功能是下載文件,這里只要在瀏覽器輸入就會下載那個文件了。 之前的項目,有個功能是下載文件,這里只要在瀏覽器輸入 url 就會下載那個文件了。當(dāng)時我只是簡單得使用 window.open ,但是卻會被瀏覽器進行攔截,要手動開啟才行,然后就搜索研究其他方法,就看到各種各樣的,通過 js 打開新窗口的方法了,這里就總結(jié)一下 解決下載功能 這里就先說解決下載功能的方法,通過同事...
摘要:之前的項目,有個功能是下載文件,這里只要在瀏覽器輸入就會下載那個文件了。 之前的項目,有個功能是下載文件,這里只要在瀏覽器輸入 url 就會下載那個文件了。當(dāng)時我只是簡單得使用 window.open ,但是卻會被瀏覽器進行攔截,要手動開啟才行,然后就搜索研究其他方法,就看到各種各樣的,通過 js 打開新窗口的方法了,這里就總結(jié)一下 解決下載功能 這里就先說解決下載功能的方法,通過同事...
摘要:在打開一個新窗口時,由于瀏覽器的安全機制,用戶未始終允許的情況下,可能會觸發(fā)到瀏覽器攔截,無法正常直接彈出。只分析使用代碼手動打開新窗口的方式。所有瀏覽器都不允許非用戶操作引起的打開新窗口。 在打開一個新窗口時,由于瀏覽器的安全機制,用戶未始終允許的情況下,可能會觸發(fā)到瀏覽器攔截,無法正常直接彈出。 網(wǎng)上有很多給出解決方案的只言片語,不夠全面,所以針對自己遇到的問題做了詳細的情況分析。...
閱讀 2002·2021-11-23 09:51
閱讀 901·2021-11-19 09:40
閱讀 856·2021-10-27 14:20
閱讀 5093·2021-10-09 09:52
閱讀 3331·2021-10-09 09:44
閱讀 1752·2021-10-08 10:05
閱讀 5183·2021-09-09 11:47
閱讀 3510·2019-08-30 12:47