亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

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

 更新時間:2014年11月03日 09:32:26   投稿:hebedich  
眾所周知,我們web開發(fā)人員痛恨IE瀏覽器,因為IE不支持標準,標準外的默認行為又和其他瀏覽器經常不一致,所以我們在做項目的時候,經常需要專門針對IE來做些文章,當然對于referer也不例外,今天我們就來看下如何讓referer兼容主流瀏覽器

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

方法:利用js的 document.referer 方法可以準確地判斷網頁的真實來路。 目前百度統(tǒng)計,google ads統(tǒng)計,CNZZ統(tǒng)計,都是用的這個方法。防盜鏈也很簡單了,js里判斷來路url如果不是本站不顯示圖片。

眾所周知,我們web開發(fā)人員痛恨IE瀏覽器,因為IE不支持標準,標準外的默認行為又和其他瀏覽器經常不一致:

在IE中用javascript做跳轉,比如用window.location.href = “”; google如果使用document.referrer無法取到瀏覽器請求的HTTP referrer,因為IE清空了

而其他主流瀏覽器Firefox和Chrome都會保留referrer,沒辦法,這意味著IE又要享受“部長級”特殊待遇了:

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

復制代碼 代碼如下:

var url = 'http://chabaoo.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;  

相關文章

最新評論