国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專欄INFORMATION COLUMN

如何解決瀏覽器彈出窗口的攔截

AndroidTraveler / 1865人閱讀

摘要:直接在代碼中執行是會被瀏覽器攔截的,瀏覽器是默認屏蔽彈出窗口,但是是用戶手動觸發,就不會攔截,如果是程序自動執行,則會攔截。

問題

有時候在開發業務時,由于產品體驗,要求自動打開新窗口,而不希望用戶手動點擊。
直接在代碼中執行:

window.open("http://www.baidu.com")

是會被瀏覽器攔截的,瀏覽器是默認屏蔽彈出窗口,但是是用戶手動觸發,就不會攔截,如果是程序自動執行,則會攔截。

解決

那么根據上述規則,那就在用戶有點擊動作時打開這個窗口,偽代碼如下:

 test
 document.getElementById("blank").onclick=function(){
    window.open(...)
 }

示例在此

不過,這方式在異步編程中還是會被攔截,所以在用戶點擊發送請求的同時打開一個新窗口,然后在回調函數中修改新窗口的地址,偽代碼如下:

 test
 document.getElementById("blank").onclick=function(){
    const newwin = window.open("about:blank");
    $.ajax({
       type: "post",
       url: "xxxx",
       data: {...},
    }).then((data)=>{
      ...
      newwin.location.href = data.href; // 調用location
    })

文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。

轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/83449.html

相關文章

  • window.open被覽器攔截解決方案

    摘要:原因分析深入研究當瀏覽器檢測到非用戶操作產生的新彈出窗口,則會對其進行阻止。但是,被瀏覽器攔截我們代碼中要彈出的窗口并不是程序員所希望的。 現象 最近在做項目的時候碰到了使用window.open被瀏覽器攔截的情況,搞得人無比郁悶啊,雖然在自己的環境可以對頁面進行放行,但是對用戶來說,不能要求用戶都來通過攔截。何況當出現攔截時,很多小白根本不知道發生了啥,不知道在哪里看被攔截的頁面,簡...

    rickchen 評論0 收藏0
  • window.open 打開新窗口攔截解決方案

    摘要:使用包裝一下,也可以防止被瀏覽器攔截。注意這里的超時時間不能太短,否則也會被攔截。我們會遇到想要彈出一個窗口,可是卻是在事件執行后,才去彈出來的,這時就會被瀏覽器攔截,我們可以通過下面的方法來避免先用打開一個窗口,然后修改地址。 最近公司開發的一個項目,平凡用到下載各種類型的文件,但是例如.txt,.jpg,.pdf格式的文件呢瀏覽器會在當前窗口直接打開,影響用戶體驗,嘗試各種方案和百...

    JeOam 評論0 收藏0
  • window.open 打開新窗口攔截解決方案

    摘要:使用包裝一下,也可以防止被瀏覽器攔截。注意這里的超時時間不能太短,否則也會被攔截。我們會遇到想要彈出一個窗口,可是卻是在事件執行后,才去彈出來的,這時就會被瀏覽器攔截,我們可以通過下面的方法來避免先用打開一個窗口,然后修改地址。 最近公司開發的一個項目,平凡用到下載各種類型的文件,但是例如.txt,.jpg,.pdf格式的文件呢瀏覽器會在當前窗口直接打開,影響用戶體驗,嘗試各種方案和百...

    Ajian 評論0 收藏0
  • window.open 打開新窗口攔截解決方案

    摘要:使用包裝一下,也可以防止被瀏覽器攔截。注意這里的超時時間不能太短,否則也會被攔截。我們會遇到想要彈出一個窗口,可是卻是在事件執行后,才去彈出來的,這時就會被瀏覽器攔截,我們可以通過下面的方法來避免先用打開一個窗口,然后修改地址。 最近公司開發的一個項目,平凡用到下載各種類型的文件,但是例如.txt,.jpg,.pdf格式的文件呢瀏覽器會在當前窗口直接打開,影響用戶體驗,嘗試各種方案和百...

    Object 評論0 收藏0

發表評論

0條評論

AndroidTraveler

|高級講師

TA的文章

閱讀更多
最新活動
閱讀需要支付1元查看
<