0

HTML のみにアクセスできる Facebook コメントを使用しています。サーバー側のスクリプトはありません。

デフォルトの出力は「# コメント」です。

<a class="comments" href="URL"><div class="fb-comments-count" data-href="URL"></div> Comments</a>

コメントの数が1の場合、Javascriptを使用して「コメント」を「コメント」に変えるにはどうすればよいですか?

ご協力ありがとうございました!

編集:

標準の Facebook コメント タグを使用しています: https://developers.facebook.com/docs/reference/plugins/comments/

出力される HTML は次のとおりです。

 <a class="comments" href="URL"><div class="fb-comments-count" data-href="URL" fb-xfbml-state="rendered"><span class="fb_comments_count">4</span></div> Comments - Click to Add Yours</a>

0 の場合は「コメント」、または 1 より大きい場合は「コメント」とだけ言いたいと思います。1 の場合はコメントします。

4

4 に答える 4

0

この関数を使用できます:

function comment_text( num_comments ){
    return 'comment'+ ( num_comments === 1 ? '' : 's' );
}

そのようです:

var comment_count = $('.fb-comments-count').text();
$(selector).text('Showing '+ comment_count + comment_text(comment_count) );

注:0コメントではなく0コメントを表示したいので、に変更num_comments > 1しましたnum_comments === 1

于 2012-11-21T10:04:10.760 に答える
0

jQuery.length を使用してコメント クラスのインスタンスがいくつ存在するかを数え、その数が 1 の場合は jQuery.HTML を使用して div の内容を変更できます。

それで...

var commentCount =  $('.FBcomment').length();

if(commentCount == 1){

 $('.comments').html('Comment');//would be more efficient to have an id here rather than a class

 }
于 2012-11-21T10:05:22.787 に答える
0

お役に立てれば:

    <a class="comments" href="URL"><div class="fb-comments-count" data-href="URL">6</div> <span class="comment-text">Comments</span></a>        
    <a class="comments" href="URL"><div class="fb-comments-count" data-href="URL">0</div> <span class="comment-text">Comments</span></a>        
    <a class="comments" href="URL"><div class="fb-comments-count" data-href="URL">1</div> <span class="comment-text">Comments</span></a>        
    <a class="comments" href="URL"><div class="fb-comments-count" data-href="URL">3</div> <span class="comment-text">Comments</span></a>        
    <script type="text/javascript">
    $(document).ready(function(){
        $(".comments").each(function(){
            var count = parseInt($(this).find(".fb-comments-count").text());
            if( count > 1){
                $(this).find(".comment-text").text('Comments');
            }
            else if(count == 0){
            $(this).find(".comment-text").text('');
            }
            else{
                $(this).find(".comment-text").text('Comment');
            }
        });
    });
    </script>
于 2012-11-21T10:06:03.190 に答える
0
function commentText(numberOfComments){
 return "comment" +((numberOfComments > 1 )?"s":"");

}

Facebook JS SDK を使用してコメント数を確認します。

于 2012-11-21T10:01:47.953 に答える