摘要:什么情況下會彈窗被攔截當(dāng)為用戶觸發(fā)事件內(nèi)部或者加載時(shí),不會被攔截,一旦將彈出代碼移動到或者一段異步代碼內(nèi)部,馬上就出現(xiàn)被攔截。會被攔截會被攔截解決先在回調(diào)函數(shù)之前打開新窗口,后再加載
什么情況下會彈窗被攔截
當(dāng)window.open為用戶觸發(fā)事件內(nèi)部或者加載時(shí),不會被攔截,一旦將彈出代碼移動到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://www.ezyhdfw.cn/yun/102703.html
摘要:原因分析深入研究當(dāng)瀏覽器檢測到非用戶操作產(chǎn)生的新彈出窗口,則會對其進(jìn)行阻止。但是,被瀏覽器攔截我們代碼中要彈出的窗口并不是程序員所希望的。 現(xiàn)象 最近在做項(xiàng)目的時(shí)候碰到了使用window.open被瀏覽器攔截的情況,搞得人無比郁悶啊,雖然在自己的環(huán)境可以對頁面進(jìn)行放行,但是對用戶來說,不能要求用戶都來通過攔截。何況當(dāng)出現(xiàn)攔截時(shí),很多小白根本不知道發(fā)生了啥,不知道在哪里看被攔截的頁面,簡...
摘要:之前的項(xiàng)目,有個功能是下載文件,這里只要在瀏覽器輸入就會下載那個文件了。 之前的項(xiàng)目,有個功能是下載文件,這里只要在瀏覽器輸入 url 就會下載那個文件了。當(dāng)時(shí)我只是簡單得使用 window.open ,但是卻會被瀏覽器進(jìn)行攔截,要手動開啟才行,然后就搜索研究其他方法,就看到各種各樣的,通過 js 打開新窗口的方法了,這里就總結(jié)一下 解決下載功能 這里就先說解決下載功能的方法,通過同事...
摘要:之前的項(xiàng)目,有個功能是下載文件,這里只要在瀏覽器輸入就會下載那個文件了。 之前的項(xiàng)目,有個功能是下載文件,這里只要在瀏覽器輸入 url 就會下載那個文件了。當(dāng)時(shí)我只是簡單得使用 window.open ,但是卻會被瀏覽器進(jìn)行攔截,要手動開啟才行,然后就搜索研究其他方法,就看到各種各樣的,通過 js 打開新窗口的方法了,這里就總結(jié)一下 解決下載功能 這里就先說解決下載功能的方法,通過同事...
摘要:在打開一個新窗口時(shí),由于瀏覽器的安全機(jī)制,用戶未始終允許的情況下,可能會觸發(fā)到瀏覽器攔截,無法正常直接彈出。只分析使用代碼手動打開新窗口的方式。所有瀏覽器都不允許非用戶操作引起的打開新窗口。 在打開一個新窗口時(shí),由于瀏覽器的安全機(jī)制,用戶未始終允許的情況下,可能會觸發(fā)到瀏覽器攔截,無法正常直接彈出。 網(wǎng)上有很多給出解決方案的只言片語,不夠全面,所以針對自己遇到的問題做了詳細(xì)的情況分析。...
閱讀 2040·2021-11-23 09:51
閱讀 931·2021-11-19 09:40
閱讀 885·2021-10-27 14:20
閱讀 5224·2021-10-09 09:52
閱讀 3366·2021-10-09 09:44
閱讀 1785·2021-10-08 10:05
閱讀 5296·2021-09-09 11:47
閱讀 3552·2019-08-30 12:47