1

这个 jQuery脚本创建了一个 URL www.tumblr.com/like/fGKvAJgQ?id=16664837215,然后使用 aniframe将带有上述 URL 的“喜欢”发送到 Tumblr 的服务器。

$(document).on('click', '.like', function (event) {

    event.preventDefault();

    var command = $(this).hasClass('liked') ? 'unlike' : 'like',
        post = $(this).closest('.post'),
        oauth = post.find('.reblog').attr('href').slice(-8),
        id = post.attr('id'),
        likeUrl = 'http://www.tumblr.com/' + command + '/' + oauth + '?id=' + id;

    $('#like-it').attr('src', likeUrl);
    $(this).toggleClass('liked');

});

在 HTML 中使用:

<article id="{PostID}">
    <a href="{ReblogURL}" class="reblog">reblog</a>
    <a href="#" class="like">like</a>
</article>

<iframe id="like-it"></iframe>

有没有办法将此信息发送到 Tumblr,而不是使用 iframe 和 jQuery?

4

1 回答 1

0

不,由于安全原因,这是不可能的。

在任何你看到一个like按钮的地方,它都是一个iframe,因为如果域、协议或端口不匹配,你就无法使用JavaScript访问父页面的iframe。

这是因为如果用户访问您的页面,您可以通过向每个页面发送 ajax 请求来强制他喜欢数百万个页面。

于 2012-04-20T12:46:05.583 回答