2012-05-07 5 views
0

이 트위터 기능을 사용하여 트윗이 게시 된 날짜의 링크를 만듭니다. Firefox, Chrome 및 Safari에서 작동합니다. IE는 잘못된 결과를 산출합니다. NaN 또는 NaN 일 전. 함수에 들어온 날짜는 Fri Apr 10:19:06 +0000 2012과 같은 형식입니다. 누구든지 어떤 생각을 가지고 있습니까?jQuery date 함수가 IE에서 잘못된 값을 반환합니다.

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; 
+0

'd' 및'n'을 (를) 로그에 기록하려고 했습니까? – Shikiryu

+1

날짜 형식이 잘못되었습니다. 왜 년 이전에 시간대가 오프셋 되었습니까? 이 달의 날짜는 어디입니까? 아마 IE는 그것을 좋아하지 않을 것입니다. Date 생성자의 문자열 매개 변수 버전은 경고로 채워 지므로 일반적으로 피해야합니다. –

+0

이 함수는 IE7의 브라우저 모드를 사용하는 IE9에서 제대로 작동합니다. 또한 IE8에서 작동합니다. 어떤 버전이 당신을 위해 작동하지 않습니까? – Snuffleupagus

답변

0

시간대 오프셋을 제거하여 해결했습니다. Thu May 1- 13:51:30 +0000 2012 년 5 월 1 일 -13시 51 분 30 초 Thu가되어 NaN 오류가 수정되었습니다.

관련 문제