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