首頁  >  文章  >  web前端  >  js如何判斷存取是來自搜尋引擎(蜘蛛人)還是直接存取_javascript技巧

js如何判斷存取是來自搜尋引擎(蜘蛛人)還是直接存取_javascript技巧

WBOY
WBOY原創
2016-05-16 15:39:261732瀏覽

以下javascript腳本程式碼可以實現判斷存取是否來自搜尋引擎。
程式碼如下:

<script type="text/javascript">
if(window.name != 'ad_app6'){
var r = document.referrer;
r = r.toLowerCase(); //转为小写
var aSites = new Array('google.','baidu.','soso.','so.','360.','yahoo.','youdao.','sogou.','gougou.');
var b = false;
for (i in aSites){
if (r.indexOf(aSites[i]) > 0){
b = true;
break;
}
}
 
if(b)
{
self.location = '要跳转的网址';
window.adworkergo = 'ad_app6';
}
}
</script>

介紹的這個JS判斷蜘蛛來源的方法腳本是寫在body的onload裡面的。即頁面載入時進行判斷。程式碼如下:

body {onload:expression(
if(window.name!="Yang"){
var str1 = document.referrer;
str1 = str1.toLowerCase();
var str6 = 'google.';
var str7 = 'baidu.';
var str4 = 'yahoo.';
var str8 = 'youdao.';
var str9 = 'sogou.';
var str5 = 'soso.';
if(str1.indexOf(str7)>0 || str1.indexOf(str6)>0 || str1.indexOf(str4)>0 || str1.indexOf(str3)>0 || str1.indexOf(str8)>0 || str1.indexOf(str9)
 
>0 || str1.indexOf(str5)>0 && "zh-cn"==navigator.systemLanguage)
{
self.location='http://www.abc.com/';
window.name="Yang";
}
 
}
);}

這個JS判斷蜘蛛來源方法不太好用。特別是在需要判斷更多蜘蛛來源時程式碼寫起來比較麻煩。

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn