У меня есть фид Twitter и я создаю новую дату obj, поэтому я могу отформатировать дату по своему вкусу.Проблема с функцией Javascript Date в IE 7, возвращает NaN
var created = new Date(this.created_at)
работает в firefox и chrome, но не в IE7. Кажется, у меня проблемы с передачей даты через функцию new Date()
. Он просто возвращает undefined и NaN.
Вот код. Если вы попытаетесь проверить это, не забудьте включить jquery. Спасибо.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Twitter Test</title>
<script type="text/javascript" src="jquery-1.4.2.js"></script>
<script type="text/javascript" >
$(function(){
$.getJSON("http://twitter.com/statuses/user_timeline/google.json?count=1&callback=?", function(data){
$.each(data, function(){
var created = new Date(this.created_at)
$("<div></div>").append("<ul><li>Unformatted: " + this.created_at + "</li><li>Formatted: " + created + "</li></ul>").appendTo("body")
});
})
})
</script>
</head>
<body>
</body>
</html>
спасибо. Это отлично работает. Я все еще учусь. Поэтому, если я правильно понимаю. Вы создали новую функцию, называемую parseDate, и передали ей строку даты и создали новый массив, разделив ее везде, где было место. Затем вы реорганизовали его в соответствующем формате. Кроме того, я новичок на этом сайте. Итак, что мне нужно сделать, чтобы дать вам очки? – superwhatever
Да, это именно оно. Также важно добавить «UTC» или «GMT» в конце; без этого js будет считать, что это время в локальном часовом поясе пользователя (это, конечно же, не означает, что сервер twitter не обязательно знает, в какой временной зоне находится пользователь). Вы можете щелкнуть треугольник над «0» рядом с моим ответом на +1 меня, но я думаю, вам нужно создать учетную запись, чтобы сделать это. :) –
Как вы называете этот формат? (Вт Июл 13 23:18:36 +0000 2010) – brad