0

这是我的测试页面:http: //ignitepixels.com/test/shareThisTest.html

我在使用 Javascript 动态生成 ShareThis 按钮时遇到问题。对于我的大多数按钮,我想使用“chicklet”类型。但我也想包括 twitter 分享 hcount 和 facebook like hcount 按钮。

通常(没有javascript)你会使用类似的东西:

<span class='st_twitter'></span>
<span class='st_facebook'></span>
<span class='st_linkedin'></span>
<span class='st_googleplus'></span>
<span class='st_email'></span>
<span class='st_reddit'></span>
<span class='st_twitter_hcount'></span>
<span class='st_fblike_hcount'></span>

但我正在尝试使用以下方法动态生成这些按钮:

stWidget.addEntry({
"service" : shareService,
"element" : document.getElementById(shareElemendID),
"url" : shareURL,
"title" : shareTitle,
"type" : shareType,
"onhover" : false
});

(注意:我的 shareType var 是使用 javascript 动态生成的。您可以通过查看测试页面的源代码来查看 javascript。)

我可以将"chicklet"其用作硬值,"type"但这不会正确呈现 hcount 按钮。所以我有一点js来决定是使用“chicklet”还是“hcount”,但即使是hcount也有有趣的结果。(请参阅标题“动态 ShareThis 按钮”下的http://ignitepixels.com/test/shareThisTest.html )。

任何人都知道我在我的 javascript 中使用的 hcount 按钮应该使用什么类型?

谢谢!

4

1 回答 1

0

对于未来的用户,这是我从 ShareThis 支持代理 ( http://support.sharethis.com/customer/portal/questions/862200-proper-share-type-for-st-twitter-hcount-and-st -fblike-hcount-dynamic-specification-through-js-#sthash.F82qZiuZ.dpbs):

由于您使用了不正确的“服务”名称,您会收到格式错误的按钮。您不能使用这样的服务名称 - “st_twitter_hcount”

请使用服务名称 - "twitter","facebook",然后您可以在 "type" 中将按钮类型指定为 "hcount" 或 "vcount"。

下面是一个示例,说明如何使用您已实现的代码来实现这一点。

shareServices : ['twitter', 'facebook', 'linkedin', 'googleplus', 'email', 'reddit', 'st_twitter', 'st_fblike','st_wordpress','st_linkedin']

shareType = ( shareService.match(/^st_/) ) ? 'hcount' : 'chicklet' ;
if( shareService.match(/^st_/) )
{
    shareService=shareService.substring(3);
};
于 2013-04-11T23:00:30.967 回答