JQuery Time Ago с плагином Twitter - PullRequest
       0

JQuery Time Ago с плагином Twitter

0 голосов
/ 15 сентября 2010

Я где-то нашел эту функцию на форуме, и я использую ее с Tweetable, чтобы показать мой последний твит на моем сайте. К сожалению, это не правильно захватывает время. В течение первого часа он говорит «меньше минуты назад», затем проходит пара часов, затем он меняется на «меньше часа назад», затем проходит два дня и меняется на «меньше дня назад». Я уверен, что это глупо в расчете.

function relTime(time_value) {
         time_value = time_value.replace(/(\+[0-9]{4}\s)/ig,"");
         var parsed_date = Date.parse(time_value);
         var relative_to = (arguments.length > 1) ? arguments[1] : new Date();
         var timeago = parseInt((relative_to.getTime() - parsed_date) / 1000);
         if (timeago < 60) return 'less than a minute ago';
         else if(timeago < 120) return 'about a minute ago';
         else if(timeago < (45*60)) return (parseInt(timeago / 60)).toString() + ' minutes ago';
         else if(timeago < (90*60)) return 'about an hour ago';
         else if(timeago < (24*60*60)) return 'about ' + (parseInt(timeago / 3600)).toString() + ' hours ago';
         else if(timeago < (48*60*60)) return '1 day ago';
              else return (parseInt(timeago / 86400)).toString() + ' days ago';
         }

Затем его помещают в пост следующим образом:

if (defaults.time == true)
   $('li#tweet-'+i).append('<p class="created-date">'+relTime(item.created_at)+'</p>');

Любая помощь будет принята с благодарностью.

Ответы [ 2 ]

2 голосов
/ 15 сентября 2010

Я использую плагин jQuery timeago , чтобы добиться того, что вы здесь делаете, и он действительно работает очень хорошо.

Вы пробовали это?У вас есть причина, чтобы кататься самостоятельно?По крайней мере, вы можете обратиться к их источнику.

Вы используете плагин таким образом:

<abbr class="timeago" title="2008-07-17T09:24:17Z">July 17, 2008</abbr>

А затем какой-нибудь скрипт:

$().ready(function() { $("abbr.timeago").timeago(); });

Да и конечноВы должны импортировать плагин:

<script src="jquery.timeago.js" type="text/javascript"></script>
0 голосов
/ 15 сентября 2010

Это работает локально.Как выглядит item.created_at?В каком часовом поясе он находится?Возможно ли, что часовые пояса отключены?(т.е. сервер возвращает время в UTC, а клиент в EST?)

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...