2012-06-20 132 views
0

我想編寫一個html頁面,單擊超鏈接可以跟蹤。這意味着我可以獲得統計信息,瞭解過去一段時間內,有多少人點擊了我的網頁中的超鏈接。如果可以知道他們的ID,那會更好。單擊超鏈接的跟蹤信息

而且我覺得這段代碼從網頁的源代碼:

<script type="text/javascript"> 
function stc(e,linkIndex) { 
    if (document.images) { 
    var linkText; 
    if (navigator.appName.toLowerCase()=="microsoft internet explorer") { 
     linkText=e.innerText} 
    else { 
     linkText=e.textContent} 
    if (linkText=="") { 
     if (e.firstChild) { 
      var firstChild=e.firstChild.nodeName.toUpperCase(); 
      if (firstChild=="IMG") { 
       linkText="Image: "+getName(e.firstChild.getAttribute('src'))}} 
     else { 
      var nodeName=e.nodeName.toUpperCase(); 
      if (nodeName=="AREA") { 
       linkText="ImageMap: "+e.href}}} 
    if (linkText=="") { 
     linkText=e.href} 
    (new Image()).src="https://stackoverflow.com/a/i/stg.gif?f="+escape(document.location.href)+"&t="+escape(e.href)+"&i="+linkIndex+"&n="+escape(trimString(linkText))}} 

function getName(s) { 
    if (s.lastIndexOf('/')>=0) { 
    return(s.substring(s.lastIndexOf('/')+1,s.length))} 
    else { 
    return(s)}} 

function trimString(s) { 
    return(s.replace(/^\s*/,"").replace(/\s*$/,""))} 
</script> 

,我猜<a href="http://www.google.com" onClick="stc(this, 1)">google</a>將能夠跟蹤無比此鏈接的信息。

我不太瞭解Javascript,有誰能告訴我,根據這段代碼,跟蹤信息被保存在哪裏?

+1

「trace」是什麼意思?你想做什麼? – Blender

+0

修正後的OP ..... – SoftTimur

回答

0

通常,其他語言的trace()只是某種輸出,在javascript中最簡單的方法是調用console.log(「some output」)。您可以通過在頁面>檢查元素上單擊鼠標右鍵來查看Google Chrome中的輸出,然後單擊控制檯選項卡,您將看到您的輸出。在Firefox中,你應該得到Firebug插件,你可以在控制檯標籤中看到console.log(「some output」)生成的輸出。

其他瀏覽器吸引dev爲什麼甚至麻煩解釋?

+0

你確定會記錄我的網頁上的叮叮噹噹嗎? – SoftTimur

0

您需要服務器端代碼來執行此操作。

例如,你可以有將用戶重定向到他們希望看到的頁面的網關腳本:

http://www.example.com/portal/www.google.com/ 

從那裏,你可以節省用戶的請求轉換成數據庫和用戶重定向到www.google.com幾乎立即沒有用戶真正關心。

+0

對不起,我明白你的意思了......但是我沒有在你給出的鏈接中找到「網關腳本」,它將我重定向到「http:// www.iana.org/ domains/example /」。 – SoftTimur

+0

我使用'example.com'作爲您的示例網站。在做這樣的事情之前,你需要閱讀Web開發。 – Blender