Tumblr内联像主页上的按钮

时间:2011-11-27 14:47:42

标签: jquery iframe tumblr

我正在尝试为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中纽扣。我试图效仿,但它不起作用。

我也尝试将这些属性放在许多不同的标签中,但它们仍然不起作用。我甚至不确定它是否失效是由于属性的放置造成的。

如果有人上班,我会很高兴能帮助我开始工作。谢谢。

2 个答案:

答案 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);