1

timeago.js を使用して日付を表示しています。ただし、特定の日付が 2 日未満の場合、プラグインの「数時間前」機能を表示したいと考えています。日付が 2 日を超える場合は、通常の「3 日前」が表示されます。

事前に助けてくれてありがとう。

4

3 に答える 3

1

どうやら、プラグインを変更する必要があります。「時間」を 48 時間未満に設定する必要があります。

 var words = seconds < 45 && substitute($l.seconds, Math.round(seconds)) ||
 hours < 48 && substitute($l.hours, Math.round(hours)) ||
于 2014-10-14T07:26:33.820 に答える
0

もちろん、あなたが行ったようにプラグインを変更することもできますし、日付をもう一度実行して、それらが 2 日を超えているかどうかを確認することもできます。

$(function(){
    var oneHour = 1*60*60*1000; // one hour in miliseconds
    var twoDays = 2*24*oneHour; // two days in miliseconds

    $('.timeAgoSelector').each(function(){
        $t = $(this);
        var agoDate = new Date( $t.attr('title') ).getTime()
        var currDate = new Date().getTime();
        var timeAgo = currDate - agoDate;
        if( (timeAgo < twoDays) && (timeAgo >= oneHour) ){
            var hours = ((timeAgo/1000)/60)/60;
            hours = Math.floor(hours);
            if( hours < 2 ) $t.html( 'an hour ago' );
                else $t.html( hours + ' hours ago' );
        } //else => do nothing (keep original content)
    });

});

=> http://jsfiddle.net/chgvcudL/

于 2014-10-14T07:59:34.810 に答える