概要
ここでの私の以前の回答から適応: Using Tumblr Like Button with Infinite Scroll
Tumblr は、 Like Statusを取得するには 2 つの関数のいずれかを呼び出す必要があると述べています。次のことをお勧めします。
関数: Tumblr.LikeButton.get_status_by_post_ids([n,n,n]) 説明: 個々の投稿のいいね! ステータスをリクエストします。投稿 ID の配列を取ります
ajax リクエストが成功すると、data
オブジェクト (新しい投稿などを含む) が作成されます。
の配列を作成する必要があります。これは、オブジェクトpostIDs
内の各投稿の ID / 番号を含む配列です。data
投稿 ID を追加する最も簡単な方法は、テーマ変数を使用することです{PostID}
。
例
HTML
<article class="post" id="{PostID}">...</article>
jQuery 投稿 ID 配列
var $newPosts = $(data).find('.post');
var $newPostIDs = $newPosts.map(function () {
return $(this).attr('id');
}).get();
Tumblr.LikeButton
Tumblr.LikeButton.get_status_by_post_ids($newPostIDs);
ヒント
配列を作成しTumblr.LikeButton
、ajax リクエストが成功したら、新しい投稿に対して他の関数を実行する場所で呼び出します。これは、 https ://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/map を使用して、純粋な JavaScript でも実行できます。