2011-08-05 48 views
1

我想創建一些統計信息並需要打印用戶參考站點或搜索關鍵字。如何獲得用戶referal網站或搜索關鍵字與JavaScript和打印它?如何設置一個用戶參考的變量

+0

我沒有tryied什麼,因爲我沒有膠水怎麼辦 –

回答

1

您可以使用document.referrer(關於mdnw3c的一些信息)。

編輯:

對於搜索kewords工作,對引薦,例如搜索的「Hello World」對谷歌給出了這樣的引用,如果直接搜索(地址欄中或搜索欄):

http://www.google.com/search?sourceid=chrome&ie=UTF-8&q=hello+world 

但搜索在谷歌的hello world類型與阿賈克斯進行(該參數是#哈希後),爲您提供了象引用:

http://www.google.com/url?sa=t&source=web&cd=1&ved=0CCQQFjAA&url=http%3A%2F%2Ffr.wikipedia.org%2Fwiki%2FHello_world&rct=j&q=hello%20world&ei=BkY8TrrHDsPO-QaDxZy8Ag&usg=AFQjCNGUmN0hpMDY4b1b1NVm_LSttMeUdQ&sig2=yngbng_Sdq78v6wEKxHq4Q 

所以,你可以只需要搜索&q參數,看看是否有/url?通過空間由空格替換%20,otherway更換+

var keywords= ""; 
var referrer= document.referrer; 
if(referrer.match(/^https?:\/\/(www|encrypted)\.google\.(be|fr|com)\//)) 
{ 
    keywords= referrer.replace(/^.+(\?.+&q=|\?q=)([^&]*)(&.*|$)$/,"$2"); 
    if(referrer.match(/^https?:\/\/(www|encrypted)\.google\.(be|fr|com)\/url\?/)) keywords= keywords.replace(/%20/g," "); 
    else keywords= keywords.replace(/\+/g," "); 
    keywords= decodeURIComponent(keywords); 
} 

對於雅虎你得到一個引用,如:

http://search.yahoo.com/search;_ylt=A0oG7h83TzxOx1MAQUBXNyoA;_ylc=X1MDUCMyNzY2Njc5BF9yAzIEYW8DMQRjc3JjcHZpZANRSWRGdlVvRzd2NlZsSnZ4VFZnV0Rna3FVZmRDVWs0OFR6Y0FCZjNsBGZyA3lmcC10LTcwMQRmcjIDc2J0bgRuX2dwcwMxMARvcmlnaW4Dc3JwBHF1ZXJ5A2hlbGxvIHdvcmxkBHNhbwMxBHZ0ZXN0aWQDVklQMDI2?p=hello+world&fr2=sb-top&fr=yfp-t-701&type_param= 

所以你可以添加:

else if(referrer.match(/^http:\/\/search\.yahoo\.com\//)) 
{ 
    keywords= decodeURIComponent(document.referrer.replace(/^.+(\?.+&p=|\?p=)([^&]*)(&.*|$)$/,"$2").replace(/\+/g," ")); 
} 

decoreURIComponent用於特殊字符(+,#,&和外來字符)。 。

,你將不得不從雅虎或谷歌的關鍵字(但你可以改變谷歌域(在(be|fr|com))和對待其他搜索電機的情況下

1
var string = document.referrer; 
alert(string); 

這會給你解決引薦網站

+0

很好,你學到新的東西每 –

0

爲了得到引薦,使用document.referrer

如果你需要使用jQuery來做到這一點:

$(document).ready(function() { 
    var referrer = document.referrer; 
}); 
+0

天想知道更多關於搜索科ywords_ –

+0

Rails:檢查引用者字符串的典型搜索字符串,例如Google URL,並解析搜索關鍵字。 –

+0

@Rails初學者好問題! –

1

的指可以打印:

document.write(document.referrer); 

你可能要檢查出的文檔Here