Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » Javascript: Дата и время

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2

Открыть новую тему     Написать ответ в эту тему

F1eryG



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
У меня есть скрипт текущей даты и времени, приведённый нижи и у него есть один недостаток под эксплореров всё отображается нормально, но вот если заглянуть из под оперы то год отображается не 2004, а 104, можно ли как-нибудь это поправить?
 

Код:
 
<script language="JavaScript">
<!--
dayarray=new Array("воскресенье","понедельник","вторник","среда","четверг","пятница","суббота")
montharray=new Array ("января","февраля","марта","апреля","мая","июня","июля","августа","сентября", "октября","ноября","декабря")
ndata=new Date();
day=dayarray[ndata.getDay()];
month=montharray[ndata.getMonth()];
date=ndata.getDate();
year=ndata.getYear();
hours = ndata.getHours();
mins = ndata.getMinutes();
secs = ndata.getSeconds();
if (hours < 10) {hours = "0" + hours }
if (mins < 10) {mins = "0" + mins }
if (secs < 10) {secs = "0" + secs }
datastr=(" "+ date +" "+ month +" "+ year +" года, "+day+", "+ hours + ":" + mins )
-->
</script>
<body>
<strong><font face="verdana,arial" color="#000000">
<script language="JavaScript">
<!--
document.write(datastr);
-->
</script>
</font></strong>  
</body>
 

Всего записей: 165 | Зарегистр. 22-11-2003 | Отправлено: 10:04 03-01-2004
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
F1eryG

Цитата:
но вот если заглянуть из под оперы то год отображается не 2004, а 104, можно ли как-нибудь это поправить?  

определять что за браузер и для оперы писать как 1900+104

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:12 03-01-2004
F1eryG



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
я нулевой в JS, может подскажеш как это реализовать? Буду признателен.

Всего записей: 165 | Зарегистр. 22-11-2003 | Отправлено: 23:28 03-01-2004
Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Cheery

Цитата:
определять что за браузер и для оперы писать как 1900+104
проще можно:
if (year<1900) year += 1900;
или же
year=ndata.getFullYear() вместо ndata.getYear()


----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 09:18 04-01-2004
F1eryG



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Svarga сделал как ты сказал, всё стало нормально отображаться, спасибо, но возник ещё один вопросик, можно ли сделать чтобы часы ходили?

Всего записей: 165 | Зарегистр. 22-11-2003 | Отправлено: 16:18 04-01-2004
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Svarga

Цитата:
проще можно:  

что то я стормозил  
F1eryG

Цитата:
но возник ещё один вопросик, можно ли сделать чтобы часы ходили?  

http://forum.ru-board.com/topic.cgi?forum=31&topic=4257#1

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 21:47 04-01-2004
dms II

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
А как сделать, чтобы дата отображалась на день, два и т.д позже чем реальное время?

Всего записей: 94 | Зарегистр. 23-07-2003 | Отправлено: 10:12 19-01-2004
M AIR J



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dms II
Просто вычти скока те надо из переменной дня
now=new Date();
day=now.getDate()-1;


----------
MJ

Всего записей: 215 | Зарегистр. 07-04-2003 | Отправлено: 15:07 19-01-2004
IntenT



Advanced Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
M AIR J

Цитата:
Просто вычти скока те надо из переменной дня  

И что получится, если зделать как ты написал????
Какая будет дата?? На (сколько-то) дней рашьше. а надо

Цитата:
чтобы дата отображалась на день, два и т.д позже чем реальное время

 
Правильнее всего, и меньше всего заморочек, если прибавлять секунды к unix timestamp. ТОгда автоматически получишь правильную дату (с учетом перехода в новый месяц, високосного года, правильные дни недели и все прочие прелести).

Всего записей: 1584 | Зарегистр. 16-12-2001 | Отправлено: 15:27 19-01-2004
M AIR J



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
я как - то и забыл про секунды :-\

----------
MJ

Всего записей: 215 | Зарегистр. 07-04-2003 | Отправлено: 16:10 19-01-2004
dms II

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
если прибавлять секунды к unix timestamp

 
А где это делать? Можно пример?

Всего записей: 94 | Зарегистр. 23-07-2003 | Отправлено: 17:09 19-01-2004
Svarga

Moderator
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dms II

Цитата:
А где это делать? Можно пример?


Код:
var da=new Date()
da.setTime(2*24*60*60*1000+da.getTime())
da=da.toGMTString()

выделенную двойку меняй на нужное количество дней
 
M AIR J

Цитата:
я как - то и забыл про секунды :-\


Цитата:
now=new Date();  
day=now.getDate()-1;  

Прикольно будет: 32-е января, 30-е февраля

----------
away.

Всего записей: 4161 | Зарегистр. 25-06-2002 | Отправлено: 06:20 20-01-2004
dms II

Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору

Цитата:
var da=new Date()  
da.setTime(2*24*60*60*1000+da.getTime())  
da=da.toGMTString()

 
Я ни как не могу разобраться куда это вставлять в этот скрипт:
 

Цитата:
<script language="JavaScript">  
<!--  
dayarray=new Array("воскресенье","понедельник","вторник","среда","четверг","пятница","суббота")  
montharray=new Array ("января","февраля","марта","апреля","мая","июня","июля","августа","сентября", "октября","ноября","декабря")  
ndata=new Date();  
day=dayarray[ndata.getDay()];  
month=montharray[ndata.getMonth()];  
date=ndata.getDate();  
year=ndata.getYear();  
hours = ndata.getHours();  
mins = ndata.getMinutes();  
secs = ndata.getSeconds();  
if (hours < 10) {hours = "0" + hours }  
if (mins < 10) {mins = "0" + mins }  
if (secs < 10) {secs = "0" + secs }  
datastr=(" "+ date +" "+ month +" "+ year +" года, "+day+", "+ hours + ":" + mins )  
-->  
</script>  
<body>  
<strong><font face="verdana,arial" color="#000000">  
<script language="JavaScript">  
<!--  
document.write(datastr);  
-->  
</script>

 
Может кто ни будь полностью написать?

Всего записей: 94 | Зарегистр. 23-07-2003 | Отправлено: 20:20 01-03-2004
dron



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
А как сделать дату типа чч/мм/гг/день недели???
Причем, что бы год был прописан именно двумя цифрами???
Спасибо!

Всего записей: 413 | Зарегистр. 20-07-2001 | Отправлено: 14:54 04-03-2005
M AIR J



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
dron

Цитата:
А как сделать дату типа чч/мм/гг/день недели???  
Причем, что бы год был прописан именно двумя цифрами???


Код:
 
dayarray=new Array("воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота");
now = new Date();
date = now.getDate();
fdate = dayarray[now.getDay()];
month = now.getMonth() + 1;
year = now.getFullYear() - 2000;
if (date < 10) { date = "0" + date }
if (month < 10) { month = "0" + month }
if (year < 10) { year = "0" + year }
datetime = date + "/" + month + "/" + year + "/" + fdate
document.write( datetime );
 

 


----------
MJ

Всего записей: 215 | Зарегистр. 07-04-2003 | Отправлено: 00:06 05-03-2005
dron



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Ок! Отлично! Спасибо, огромное!!!

Всего записей: 413 | Зарегистр. 20-07-2001 | Отправлено: 12:44 05-03-2005
kriMzki

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
а как сделать чтобы вот так показывалось?
Понедельник 07. Март 2005

Всего записей: 6 | Зарегистр. 27-02-2005 | Отправлено: 02:56 07-03-2005
ManHunter



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
kriMzki

Код:
<script>
  now=new Date();
  mArray= new Array("января", "февраля", "марта", "апреля", "мая", "июня", "июля", "августа", "сентября", "октября", "ноября", "декабря");
  dArray=new Array("воскресенье", "понедельник", "вторник", "среда", "четверг", "пятница", "суббота");
  var Day=now.getDate(); if (Day<10) {Day="0"+Day};
  var Year=now.getYear(); if (Year<1000) {Year=Year+1900};
 
  Hello="Сегодня "+Day + " " + mArray[now.getMonth()] + " " + Year + " года, " +dArray[now.getDay()];
  document.write(Hello);
</script>

Сегодня 08 марта 2005 года, вторник

----------
"На любое мое движение ваша реакция предусмотрена,
В лучшем случае - равнодушие, в худшем случае - патология..." (C) Егор Летов

Всего записей: 3102 | Зарегистр. 20-03-2004 | Отправлено: 06:50 08-03-2005 | Исправлено: ManHunter, 06:51 08-03-2005
Paha_W



Full Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
var date = new Date();
var hours = date.getHours();
         
if      (hours >= 5 && hours < 12)   { Text = "Доброе утро!";  }  
else if (hours >= 12 && hours < 18)  { Text = "Добрый день!";  }  
else if (hours >= 18 && hours <= 23) { Text = "Добрый вечер!"; }  
else if (hours > 23 )                { Text = "Добрый вечер!"; }  
else if (hours >= 0 && hours < 5)    { Text = "Доброй ночи!";  }
       
ClockDate.innerHTML=Text;
 
у меня вопрос правильно ли я раставил временной интервал?

----------
Far Far Away
У каждого в голове свои тараканы...

Всего записей: 440 | Зарегистр. 26-05-2004 | Отправлено: 13:35 14-12-2005
Cheery



.:МордератоР:.
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Paha_W

Цитата:
у меня вопрос правильно ли я раставил временной интервал?

ну во-первых.. у всех разные понятия когда утро, день или вечер..
во-вторых

Цитата:
else if (hours >= 18 && hours <= 23) { Text = "Добрый вечер!"; }  
else if (hours > 23 )                { Text = "Добрый вечер!"; }  

вторая строчка не несет смысла.

----------
Away/DND

Всего записей: 52737 | Зарегистр. 04-04-2002 | Отправлено: 15:37 14-12-2005
Открыть новую тему     Написать ответ в эту тему

Страницы: 1 2

Компьютерный форум Ru.Board » Интернет » Web-программирование » Javascript: Дата и время


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru