欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

解決js下referer兼容各大瀏覽器的方法

 更新時(shí)間:2014年11月03日 09:32:26   投稿:hebedich  
眾所周知,我們web開(kāi)發(fā)人員痛恨IE瀏覽器,因?yàn)镮E不支持標(biāo)準(zhǔn),標(biāo)準(zhǔn)外的默認(rèn)行為又和其他瀏覽器經(jīng)常不一致,所以我們?cè)谧鲰?xiàng)目的時(shí)候,經(jīng)常需要專(zhuān)門(mén)針對(duì)IE來(lái)做些文章,當(dāng)然對(duì)于referer也不例外,今天我們就來(lái)看下如何讓referer兼容主流瀏覽器

HTTP Header referer這玩意主要是告訴人們我是從哪兒來(lái)的,就是告訴人家我是從哪個(gè)頁(yè)面過(guò)來(lái)的,可以用于統(tǒng)計(jì)訪問(wèn)本網(wǎng)站的用戶來(lái)源,也可以用來(lái)防盜鏈。獲取這個(gè)東西最好的方式是js,如果在服務(wù)器端獲取(PHP方法如:$_SERVER['HTTP_REFERER']) 不靠譜,人家可以偽造,用js獲取最好,人家很難偽造,

方法:利用js的 document.referer 方法可以準(zhǔn)確地判斷網(wǎng)頁(yè)的真實(shí)來(lái)路。 目前百度統(tǒng)計(jì),google ads統(tǒng)計(jì),CNZZ統(tǒng)計(jì),都是用的這個(gè)方法。防盜鏈也很簡(jiǎn)單了,js里判斷來(lái)路url如果不是本站不顯示圖片。

眾所周知,我們web開(kāi)發(fā)人員痛恨IE瀏覽器,因?yàn)镮E不支持標(biāo)準(zhǔn),標(biāo)準(zhǔn)外的默認(rèn)行為又和其他瀏覽器經(jīng)常不一致:

在IE中用javascript做跳轉(zhuǎn),比如用window.location.href = “”; google如果使用document.referrer無(wú)法取到瀏覽器請(qǐng)求的HTTP referrer,因?yàn)镮E清空了

而其他主流瀏覽器Firefox和Chrome都會(huì)保留referrer,沒(méi)辦法,這意味著IE又要享受“部長(zhǎng)級(jí)”特殊待遇了:

以下代碼可以解決ie的這個(gè)問(wèn)題:
//檢測(cè)如果是ie瀏覽器,則手動(dòng)的給增加一個(gè)referer
這樣的原理就是給IE瀏覽器的頁(yè)面偷偷加了個(gè)鏈接,然后自動(dòng)點(diǎn)這個(gè)鏈接,于是referrer就能保留了。

復(fù)制代碼 代碼如下:

var url = 'http://www.dbjr.com.cn';  
if (/MSIE (\d+\.\d+);/.test(navigator.userAgent) || /MSIE(\d+\.\d+);/.test(navigator.userAgent))  
{  
    var referLink = document.createElement('a');  
    referLink.href = url;  
    document.body.appendChild(referLink);  
    referLink.click();  
}  
else 
{  
    location.href = url;  

相關(guān)文章

最新評(píng)論