window.open()如何繞過chrome的彈窗攔截

一.首先,我們要知道哪些彈窗會被 chrome攔截,哪些彈窗不會被攔截

  1.非用戶觸發的window.open方法,是會被攔截的。

//定義一個按鈕
    var btn = $('#btn');
//由用戶點擊觸發按鈕
    btn.click(function () {
        $.ajax({
            url: 'ooxx',
            success: function (url) {
          //這裏的window.open()方法由 ajax觸發 ,不屬於用戶觸發
//打開一個不被攔截的新窗口 var newWindow = window.open(); //修改新窗口的url newWindow.location.href = url; } }) });

 

 

  2.用戶觸發的window.open方法,不會被攔截。

二.如何,避免被攔截

  最簡單的方法:讓window.open方法被用戶觸發

  

//定義一個按鈕
var btn = $('#btn');
//由用戶點擊觸發按鈕
btn.click(function () {

    //打開一個不被攔截的新窗口
    var newWindow = window.open();

    $.ajax({
        url: 'ooxx',
        success: function (url) {

            //修改新窗口的url
            newWindow.location.href = url;
        }
    })
});

 

 

 

原文出處:https://www.cnblogs.com/raymond-yan/p/11820839.html

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章