window.open關(guān)于瀏覽器攔截問題分析及解決方法
更新時間:2013年02月05日 14:54:27 作者:
window.open是javascript函數(shù),該函數(shù)的作用是打開一個新窗口或這改變原來的窗口,如果你直接在js中調(diào)用window.open()函數(shù)去打開一個新窗口,瀏覽器會攔截你,那么如何避免呢,感興趣的朋友可以了解下本文或許對你學(xué)習(xí)有所幫助
window.open是javascript函數(shù),該函數(shù)的作用是打開一個新窗口或這改變原來的窗口,不過一般用來的是打開新窗口,因為修改原來的網(wǎng)頁地址,可以有另一個函數(shù),那就是window.location,他可以重定向網(wǎng)頁地址,使網(wǎng)頁跳轉(zhuǎn)到另一個頁面。
我現(xiàn)在要說的是window.open函數(shù)的幾個使用策略,一般情況下,如果你直接在js中調(diào)用window.open()函數(shù)去打開一個新窗口,瀏覽器會攔截你,認為你將彈出廣告等用戶不想得到的窗體,所以如果不想讓瀏覽器攔截你,你可以將這個函數(shù)改為用戶點擊時觸發(fā),這樣瀏覽器就認為是用戶想訪問這個頁面,而不是你直接彈出給用戶。
所以常用的方法就是在超鏈接里加入onclick事件,如<a href="javascript:void(0)" onclick="window.open()"></a>這樣用戶點擊這個超鏈接,瀏覽器會認為它是打開一個新的鏈接,所以就不會攔截。
可是有時候我們會遇到想要彈出一個窗口,可是卻是在onckick事件執(zhí)行后,才去彈出來的,這時就會被瀏覽器攔截,我們可以通過下面的方法來避免,就是先用window.open打開一個窗口,然后修改地址。如var tempwindow=window.open('_blank');打開一個窗口,然后用tempwindow.location='http://www.baidu.com';使這個窗口跳轉(zhuǎn)到百度,這樣就會呈現(xiàn)彈出百度窗口的效果了。
我現(xiàn)在要說的是window.open函數(shù)的幾個使用策略,一般情況下,如果你直接在js中調(diào)用window.open()函數(shù)去打開一個新窗口,瀏覽器會攔截你,認為你將彈出廣告等用戶不想得到的窗體,所以如果不想讓瀏覽器攔截你,你可以將這個函數(shù)改為用戶點擊時觸發(fā),這樣瀏覽器就認為是用戶想訪問這個頁面,而不是你直接彈出給用戶。
所以常用的方法就是在超鏈接里加入onclick事件,如<a href="javascript:void(0)" onclick="window.open()"></a>這樣用戶點擊這個超鏈接,瀏覽器會認為它是打開一個新的鏈接,所以就不會攔截。
可是有時候我們會遇到想要彈出一個窗口,可是卻是在onckick事件執(zhí)行后,才去彈出來的,這時就會被瀏覽器攔截,我們可以通過下面的方法來避免,就是先用window.open打開一個窗口,然后修改地址。如var tempwindow=window.open('_blank');打開一個窗口,然后用tempwindow.location='http://www.baidu.com';使這個窗口跳轉(zhuǎn)到百度,這樣就會呈現(xiàn)彈出百度窗口的效果了。
相關(guān)文章
JS+CSS實現(xiàn)網(wǎng)頁加載中的動畫效果
這篇文章主要為大家詳細介紹了JS+CSS實現(xiàn)網(wǎng)頁加載中的動畫效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-10-10詳解JavaScript中的before-after-hook鉤子函數(shù)
最近看別人的代碼,接觸到一個插件,before-after-hook,百度搜一圈也沒有看到什么地方有教程,本文就來簡單介紹一下這個插件的使用方法,需要的可以參考一下2022-12-12JS獲取表格內(nèi)指定單元格html內(nèi)容的方法
這篇文章主要介紹了JS獲取表格內(nèi)指定單元格html內(nèi)容的方法,涉及javascript中innerHTML屬性的使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下2015-03-03