1. 程式人生 > >如何讓js彈出新視窗不被攔截

如何讓js彈出新視窗不被攔截

(一)、問題一

一般情況下,如果直接在js中呼叫window.open()函式去開啟一個新視窗,瀏覽器會對彈出的視窗進行攔截,因為瀏覽器會把該視窗認為是彈出廣告等使用者不想得到的窗體

1、解決方法
把window.open()函式改為由使用者主動點選時觸發,在超連結里加入onclick事件,這樣瀏覽器就認為是使用者想訪問這個頁面,而不是直接彈出給使用者
2、例如:
《a href="javascript:void(0)" onclick="window.open()"></a>

這樣使用者點選這個超連結,瀏覽器會認為它是開啟一個新的連結,所以就不會攔截。

(二)、問題二

使用ajax處理資料,當點選獲取資料後,再跳轉到新頁面,這時就會被瀏覽器攔截

1、解決方法

先用window.open開啟一個視窗,然後修改該視窗地址

2、例如

var tempwindow=window.open();

tempwindow.location='http://www.baidu.com';