0

つぶやきの投稿日と連動するtwitter機能があります。Firefox、Chrome、および Safari で動作します。ただし、IE は数日前に NaN または NaN を生成します。関数に入力される日付は、Fri Apr 10:19:06 +0000 2012 のようにフォーマットされます。

            html += '<a target="_blank" href="http://twitter.com/' + username + '#status_' + data[i].id_str + '">' + data[i].text + ' <i>' + Twitter.daysAgo(data[i].created_at) + '</i></a>';

            daysAgo: function (date) {

            var d = new Date(date).getTime();
            var n = new Date().getTime();

            var numDays = Math.round(Math.abs(n - d) / (1000 * 60 * 60 * 24));
            var daysAgo = numDays + ' days ago';

            if (numDays == 0) {
                alert('Works 1');
                daysAgo = 'today';
            } else if (numDays == 1) {
                alert('Works 2');
                daysAgo = numDays + ' day ago';
            }

            return daysAgo;
4

1 に答える 1

0

data[i].created_atIE が日付として解析できない文字列を返します。ISO 8601 日付文字列としてフォーマットしてみてください。

>> new Date("2012-01-01T00:00+01:00") 
Sun Jan 1 00:00:00 UTC+0100 2012

注: ISO 日付形式は、Internet Explorer 8 標準モードおよび Quirks モードではサポートされていません

あなたの文字列には日付が欠けているか、日付が:多すぎるようです:Fri Apr 10:19:06 +0000 2012

于 2013-07-30T09:28:38.517 に答える