Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
Программирование. Ступени успешной карьеры. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. PHP Puzzles. Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

HTML+CSS+JavaScript

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Работающие часы на Javascript
 
 автор: aexb   (17.11.2006 в 18:09)   письмо автору
 
 

Почему-то во всех онлайн JavaScript-учебниках скрипт часов использует <input> для отображения. Для себя написал функцию отображения в тексте страницы, выкладываю, может кому понадобится :-)
<html><head>
<script>
function showTime()
{
  var CurTime=new Date();
  var h=CurTime.getHours();
  var m=CurTime.getMinutes();
  var s=CurTime.getSeconds();
  var STime=""+h;
  STime+=((m<10)? ":0" : ":") + m; 
  STime+=((s<10)? ":0" : ":") + s;
  document.getElementById("time").innerHTML=STime;
  timerId=setTimeout("showTime()",1000);
}
</script></head>
<body onload="showTime()">
<span id="time"></span>
</body>
</html>

Добавил: проверял на корректность в FF 1.0.6, IE 6.0 и Opera 8.51

   
 
 автор: SHAman   (17.11.2006 в 18:12)   письмо автору
 
   для: aexb   (17.11.2006 в 18:09)
 

УРА!!! Давайте делиться часами!!!! 8-)))

Вот мой ролекс! B-]

function add0(x)    {
var value=new String(x);
return(x<10)?"0"+x.toString():x;
}
function clock()    {
var CD= new Date();
var hours=CD.getHours();
var minutes=CD.getMinutes();
var sec=CD.getSeconds();
var time=add0(hours)+":"+add0(minutes)+":"+add0(sec);
document.all['clock'].innerText=time;
setTimeout("clock();",1000);
}

   
 
 автор: aexb   (17.11.2006 в 18:17)   письмо автору
 
   для: SHAman   (17.11.2006 в 18:12)
 

А у меня зато функция всего одна B-D. Кстати, в моем FF скрипт ничего не показывает. Нужно заменить document.all на document.getElementById.

   
 
 автор: SHAman   (17.11.2006 в 18:49)   письмо автору
 
   для: aexb   (17.11.2006 в 18:17)
 

О! Согласен. Зато у меня правильней с точки зрения структурного программирования. Действие выполняется более 1 раза, значит нужно писать функцию. Что я и сделал:)

   
 
 автор: Фитч   (18.11.2006 в 17:33)   письмо автору
 
   для: aexb   (17.11.2006 в 18:09)
 

А можно попроще:

function clock()
{
 var d=new Date();
 var s=new String(d.toLocaleString());
 return s.substr(s.length-8,8);
}
ну и тд

   
 
 автор: 12345   (18.11.2006 в 19:21)   письмо автору
 
   для: Фитч   (18.11.2006 в 17:33)
 

<body onload="setInterval('document.getElementById(&quot;d1&quot;).innerHTML=(new Date()).toString().replace(/.+ (\\d+:\\d+:\\d+).+/,&quot;$1&quot;)',1000)">
<div id=d1></div>

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования