caoporm97国产在线视频|欧美性XXXXX精品|一本一道久久a久久精品综合开|精品久久久久久久久久久AⅤ|

十年專注于品牌網(wǎng)站建設(shè) 十余年專注于網(wǎng)站建設(shè)_小程序開發(fā)_APP開發(fā),低調(diào)、敢創(chuàng)新、有情懷!
南昌百恒網(wǎng)絡(luò)微信公眾號(hào) 掃一掃關(guān)注
小程序
tel-icon全國(guó)服務(wù)熱線:400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開百恒網(wǎng)絡(luò)微信小程序

百恒網(wǎng)絡(luò)

南昌百恒網(wǎng)絡(luò)

判斷是否屏蔽彈出窗口方法及代碼

百恒網(wǎng)絡(luò) 2013-05-05 5361

首先由南昌網(wǎng)絡(luò)公司工程師介紹關(guān)于屏蔽彈出窗口的原因,曾經(jīng)有一段時(shí)間,廣告商在網(wǎng)上使用彈出窗口達(dá)到了肆無(wú)忌憚的程度。他們經(jīng)常把彈出窗口打扮成系統(tǒng)對(duì)話框的模樣,引誘用戶去點(diǎn)擊其中的廣告。由于看起來(lái)像是系統(tǒng)對(duì)話框,一般用戶很難分辨是真是假。為了解決這個(gè)問(wèn)題,有些瀏覽器開始在彈出窗口配置方面增加限制。

Windows XP SP2中的IE 6對(duì)彈出窗口施加了多方面的安全限制,包括不允許在屏幕之外創(chuàng)建彈出窗口、不允許將彈出窗口移動(dòng)到屏幕以外、不允許關(guān)閉狀態(tài)欄等。IE 7則增加了更多的安全限制,如不允許關(guān)閉地址欄、默認(rèn)情況下不允許移動(dòng)彈出窗口或調(diào)整其大小。Firefox 1從一開始就不支持修改狀態(tài)欄,因此無(wú)論給window.open()傳人什么樣的特性字符串,彈出窗口中都會(huì)無(wú)一例外地顯示狀態(tài)欄。后來(lái)的Firefox 3又強(qiáng)制始終在彈出窗口中顯示地址欄。Opera只會(huì)在主瀏覽器窗口中打開彈出窗口,但不允許它們出現(xiàn)在可能與系統(tǒng)對(duì)話框混淆的地方。

此外,有的瀏覽器只根據(jù)用戶操作來(lái)創(chuàng)建彈出窗口。這樣一來(lái),在頁(yè)面尚未加載完成時(shí)調(diào)用window.open()的語(yǔ)句根本不會(huì)執(zhí)行,而且還可能會(huì)將錯(cuò)誤消息顯示給用戶。換句話說(shuō),只能通過(guò)單擊或者擊鍵來(lái)打開彈出窗口。

對(duì)于那些不是用戶有意打開的彈出窗口,Chrome采取了不同的處理方式。它不會(huì)像其他瀏覽器那樣簡(jiǎn)單地屏蔽這些彈出窗口,而是只顯示它們的標(biāo)題欄,并把它們放在瀏覽器窗口的右下角。

在打開計(jì)算機(jī)硬盤中的網(wǎng)頁(yè)時(shí),IE會(huì)解除對(duì)彈出窗口的某些限制。但是在服務(wù)器上執(zhí)行這些代碼會(huì)受到對(duì)彈出窗口的限制。

彈出窗口屏蔽程序

大多數(shù)瀏覽器都內(nèi)置有彈出窗口屏蔽程序,而沒(méi)有內(nèi)置此類程序的瀏覽器,南昌網(wǎng)站設(shè)計(jì)公司技術(shù)員認(rèn)為,也可以安裝Yahoo!Toolbar等帶有內(nèi)置屏蔽程序的實(shí)用工具。結(jié)果就是用戶可以將絕大多數(shù)不想看到彈出窗口屏蔽掉。于是,在彈出窗口被屏蔽時(shí),就應(yīng)該考慮兩種可能性。如果是瀏覽器內(nèi)置的屏蔽程序阻止的彈出窗口,

那么window.open()很可能會(huì)返回null。此時(shí),只要檢測(cè)這個(gè)返回的值就可以確定彈出窗口是否被屏蔽了,如下面的例子所示:

var jxbhWin=window. open("http://m.gimmickmag.com","_blank");

if(jxbhWin==null)(

alert("The popup was blocked!");

)

如果是瀏覽器擴(kuò)展或其他程序阻止的彈出窗口,那么window.open()通常會(huì)拋出一個(gè)錯(cuò)誤。因此,要想準(zhǔn)確地檢測(cè)出彈出窗口是否被屏蔽,必須在檢測(cè)返回值的同時(shí),將對(duì)window.open()的調(diào)用封裝在一個(gè)try-catch塊中,如下所示:

var jxbhWin=window. open("http://m.gimmickmag.com","_blank");

if (jxbhWin==null)(

在任何情況下,以上代碼都可以檢測(cè)出調(diào)用window.open()打開的彈出窗口是不是被屏蔽了。但要注意的是,檢測(cè)彈出窗口是否被屏蔽只是一方面,它并不會(huì)阻止瀏覽器顯示與被屏蔽的彈出窗口有關(guān)的消息。

本文僅限內(nèi)部技術(shù)人員學(xué)習(xí)交流,不得作于其他商業(yè)用途.文章出自:南昌網(wǎng)站建設(shè)公司-百恒網(wǎng)絡(luò) http://m.gimmickmag.com 如轉(zhuǎn)載請(qǐng)注明出處!


400-680-9298,0791-88117053
掃一掃關(guān)注百恒網(wǎng)絡(luò)微信公眾號(hào)
掃一掃打開百恒網(wǎng)絡(luò)小程序

歡迎您的光顧,我們將竭誠(chéng)為您服務(wù)×

售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售前咨詢 售前咨詢
 
售后服務(wù) 售后服務(wù)
 
售后服務(wù) 售后服務(wù)
 
備案專線 備案專線
 
×