使用jQuery动态更改AddThis url

我正在尝试动态更改addthis发送的URL。 当用户更改元素时,它会更新包含自定义URL的文本区域,以便他们可以返回到该URL并继续/查看其工作。

我正在创建一个像这样的addthis按钮(来自他们的API文档):

var addthis_share = {url:"http://www.johndoe.com"} $(document).ready(function(){ var tbx = document.getElementById("toolbox"), svcs = {email: 'Email', print: 'Print', facebook: 'Facebook', expanded: 'More'}; for (var s in svcs) { tbx.innerHTML += ''+svcs[s]+''; } addthis.toolbox("#toolbox"); }); 

然后,当更新url时,我正在尝试更新addthis共享url,如下所示:

 function updateURL(){ ...get some variables here and generate a new url var newURL="http://the.url.i.want.to.share.com"; $('#tagUrl').val(newURL); //addthis_share = {url:newURL} addthis_share = {url:newURL} addthis.toolbox("#toolbox"); } 

原始按钮生成并包含正确的URL,但是当url update函数执行addthis时,共享url不会更新。 如何强制它更新addthis url?

如果你想在加载html后更改addthis url(如果是ajax或某些用户事件),请使用下面的hack。 Addthis apis打破了[09/04/13 11:42:24 AM]阳光明媚的jhunjhunwala:

 addthis.update('share', 'url', 'http://www.sourcen.com'); addthis.url = "http://www.sourcen.com";        addthis.toolbox(".addthis_toolbox"); 

http://www.sourcen.com —>新url

这很简单:

 addthis.update('share', 'url', "http://www.example.com"); addthis.update('share', 'title', "Example Domain Title"); addthis.update('share', 'description', "Hello, I am a description"); 

干杯,加里

AddThis提供addthis.update(“share”,“url”,value)函数(但它是IE8中的一个错误函数); 试试这个:

 for(var i = 0; i < addthis.links.length; i++){ addthis.links[i].share.url= "new url"; } 
   

我使用全局变量shareConfig来跟踪URL和标题配置。 我在网页上有多个addthis按钮,每个按钮共享不同的内容。 因此我添加了一个isSameNode以确保我只更新我想要的按钮。

虽然URL和标题是动态更改的,但addthis:urladdthis:title属性必须出现在按钮( )中,否则它将无效。

步骤1:准备要用其他HTML加载的ajax内容;

 

第2步:准备我的fancybox ajax设置;

 $('.popUpBtn').fancybox({ //....other fancybox settings can go here... //.... afterShow : function(current, previous){ //addthis.init(); addthis.update('share', 'url', $('.fancybox-inner .addthis_sharing_toolbox-CUSTOM').data('url')); addthis.update('share', 'title', $('.fancybox-inner .addthis_sharing_toolbox-CUSTOM').data('title')); //addthis.update('share', 'description', "Hello, I am a description"); addthis.toolbox('.addthis_sharing_toolbox-CUSTOM'); //-->Important: this selector should not be anything from the addthis settings page; We can choose any other names like normal selectors; } }); 

“afterShow()”函数中的上述行对于保持注释很重要;

要自定义按钮:

  Share  

头部:

    

正文部分:在我的情况下我使用php我设置了这样的身体属性。

  

动态更新内容(JS部分):