我正在尝试为Tumblr博客主页上的每个帖子添加一个内联类似按钮,类似于http://cicerontheme.tumblr.com/。
我已按照Tumblr — getting the 8 digit reblog code on home page (nearly there...)上的建议进行操作,并将其包含在我的代码中。
$('a.likeLink').click(function() {
var post = $(this).closest('.post');
var id = post.attr('id');
var oath = post.attr('rel').slice(-8);
var like = 'http://www.tumblr.com/like/'+oath+'?id='+id;
$('#likeit').attr('src', like);
});
我已经分别使用{PostID}和{ReblogURL}这两个都是Tumblr的变量标签,用于id和rel属性的值,分别用于HTML标签的“post”类。我还在其中包含了相同的iframe,以便向http://www.tumblr.com/like/发送请求....
现在,我不确定这些属性属于哪个HTML标记,所以我查看了Ciceron的来源,并注意到它们包含在包含帖子内容的div标签和类似的标签和reblog中纽扣。我试图效仿,但它不起作用。
我也尝试将这些属性放在许多不同的标签中,但它们仍然不起作用。我甚至不确定它是否失效是由于属性的放置造成的。
如果有人上班,我会很高兴能帮助我开始工作。谢谢。
答案 0 :(得分:1)
更新:我已在http://like-button.tumblr.com获得详细说明。我已经消除了从帖子中获取id的需要,而是将其放在链接本身上。我已将整个过程剪切并粘贴。
您需要将rel
属性放在帖子包装器上而不是post
类。这就是她的路线:
var post = $(this).closest('.post');
正在做。所以看起来应该是这样的:
<div id="{PostID}" rel="{ReblogURL}" class="post">
<!-- post goes here -->
</div>
答案 1 :(得分:0)
尝试更改此内容:
$('#likeit').attr('src', like);
为:
$(this).attr('src', like);
并验证类似链接是否正确,您可以这样做:
alert(like);
或者如果你有萤火虫或铬做:
console.debug(like);