2010-09-20 103 views
0

我需要在所有轉到某個URL的鏈接的末尾附加一個關聯標識。附加到jQuery的鏈接

這是我有,但我不能得到它的工作。

(這將是在WordPress)

<script type="text/javascript"> 
jQuery(document).ready(function() { 
    jQuery("a[href*=doitbest]").click(function() { 
    this.append("?memberid=5705&associate=true"); 
    }); 
}); 
</script> 

有什麼想法?

回答

1

首先,我相信你必須使用$(this)而不是this

您還希望更改鏈接的URL。這種變化應作出href屬性,所以

$('a#my_link').click(function (event) { 
    $(this).attr('href', $(this).attr('href') + '&id=1'); 
}); 
2

假設你的選擇(a[href*=doitbest])的作品,你可以嘗試:

jQuery(document).ready(function() { 
    jQuery("a[href*=doitbest]").click(function() { 
     href = $(this).attr('href'); 
     del = href.indexOf('?') > -1 ? '&' : '?'; 
     href += del + 'memberid=5705&associate=true'; 
     $(this).attr('href', href); 
    }); 
}); 

這改變了href屬性,而不是鏈接文本。不過,我不完全確定這是你想要的。變量del用於通過&? char附加URL部分。

+0

這沒有奏效,但我忘了提及我試圖追加的鏈接來自我在屏幕上顯示的RSS提要。這是否有所作爲? – 2010-09-20 16:08:11

+0

@Adam Munns可能是 - 如果鏈接不是連接點擊處理程序時的DOM的一部分,則沒有'href'被操縱。請發佈更多代碼或鏈接到現場演示。此外,嘗試在'click'函數內部放置一個簡單的'alert()'以查看處理程序是否正確連接。 – jensgram 2010-09-20 19:44:34

+0

如何判斷解析的RSS提要是否是DOM的一部分?該警報似乎沒有做任何事情。 – 2010-09-21 22:53:19