Чтобы отключить РЕКЛАМУ,нажмите НЕ крестик на "ОТКЛЮЧИТЬ РЕКЛАМУ",
а малюсенькую кнопочку CLOSE (ЗАКРЫТЬ).Так учит uCoz.

?iaaen.Iao?eea
Вернуться

Пример 3: Электронные часы


Итак, пример третий - часики. Этот пример тоже взят с одного из сайтов, прошу прощения за отсутствие ссылки.

Это текст примера 3 до его изменения мной:


<html>
<head>
<TITLE>ПРИМЕР 3: ЧАСЫ</TITLE>
</head>
 <BODY>
<!--BEGIN OF ОПИСАНИЕ ФУНКЦИИ ЭЛЕКТРОННЫХ ЧАСОВ-->
<script language = "JavaScript">
<!--
function vrema()
{
var now = new Date();
var hour = now.getHours();
var minute = now.getMinutes();
var seconds = now.getSeconds();
document.frm.clock.value=hour+':'+minute+':'+seconds;
timerID = setTimeout("vrema()", 1000); 
}
// -->
<!--END OF ОПИСАНИЕ ФУНКЦИИ ЭЛЕКТРОННЫХ ЧАСОВ-->
<!--
var timerID = null;
var timerRunning = false;
var id,pause=0,position=0;
function ticker(){
var i, k; 
var msg = current_str;
  k=(75/msg.length)+1;
  for(i=0;i<=k;i++) msg+=" "+msg;
  document.form2.ticker.value=msg.substring(position,position+100);
  if(position++==65) position=0;
  id=setTimeout("ticker()",2000/10); }

function action(){
  if(!pause){
    clearTimeout(id);
    pause=1;
  }
  else{
    ticker();
    pause=0;
  }
}
// -->
</SCRIPT>

<TABLE border="0" width="100%" height="5%"> 
 <TR valign ="top" heiht="5%">
 <TD align="left" width=50%>
<form name=frm>
<input type=text size=8 name=clock>
</FORM>
<!--Создадим скрипт, вызывающий показ времени--> 
<script language="JavaScript">vrema();</script>
<!--Функция getHours() получает часы, getMinutes() минуты, а getSeconds() - секунды. 
Строка "document.frm.clock.value=hour+':' +minute+':' +seconds ;" прописывает в поле clock время. 
А строка "timerID = setTimeout("vrema()", 1000); " устанавливает через сколько миллисекунд выходит время 
верности этой функции, и её снова пора обновлять (1000 миллисекунд= 1сек).-->
</html>


Посмотрите, как это выглядело на экране (нажмите!).
Я внес небольшое изменение. До него, если число часов, минут, секунд было меньше 10, то оно отображалось на экране "неправильно", например, 10 часов 5 минут 3 секунды выглядело как 10:5:3. После исправления то же время стало выглядеть как 10:05:03. Для этого я ввел в текст программы следующие строки:

switch (hour) {
case 0: 
case 1: 
case 2: 
case 3: 
case 4: 
case 5: 
case 6: 
case 7: 
case 8: 
case 9: 
hour1='0'+hour;
break;
default:
hour1=hour; 
}
switch (minute) {
case 0: 
case 1: 
case 2: 
case 3: 
case 4: 
case 5: 
case 6: 
case 7: 
case 8: 
case 9: 
minute1='0'+minute;
break;
default:
minute1=minute; 
}
switch (seconds) {
case 0: 
case 1: 
case 2: 
case 3: 
case 4: 
case 5: 
case 6: 
case 7: 
case 8: 
case 9: 
seconds1='0'+seconds;
break;
default:
seconds1=seconds; 
}


Также пришлось заменить строку document.frm.clock.value=hour+':'+minute+':'+seconds; на document.frm.clock.value=hour1+':'+minute1+':'+seconds1;


Вот текст примера 3 после его изменения мной:

<html>
<head>
<TITLE>ПРИМЕР 3: ЧАСЫ</TITLE>
</head>
 <BODY>
<!--BEGIN OF ОПИСАНИЕ ФУНКЦИИ ЭЛЕКТРОННЫХ ЧАСОВ-->
<script language = "JavaScript">
<!--
function vrema()
{
var now = new Date();
var hour = now.getHours();
var minute = now.getMinutes();
var seconds = now.getSeconds();
switch (hour) {
case 0: 
case 1: 
case 2: 
case 3: 
case 4: 
case 5: 
case 6: 
case 7: 
case 8: 
case 9: 
hour1='0'+hour;
break;
default:
hour1=hour; 
}
switch (minute) {
case 0: 
case 1: 
case 2: 
case 3: 
case 4: 
case 5: 
case 6: 
case 7: 
case 8: 
case 9: 
minute1='0'+minute;
break;
default:
minute1=minute; 
}
switch (seconds) {
case 0: 
case 1: 
case 2: 
case 3: 
case 4: 
case 5: 
case 6: 
case 7: 
case 8: 
case 9: 
seconds1='0'+seconds;
break;
default:
seconds1=seconds; 
}
document.frm.clock.value=hour1+':'+minute1+':'+seconds1;
timerID = setTimeout("vrema()", 1000); 
}
// -->
<!--END OF ОПИСАНИЕ ФУНКЦИИ ЭЛЕКТРОННЫХ ЧАСОВ-->
<!--
var timerID = null;
var timerRunning = false;
var id,pause=0,position=0;
function ticker(){
var i, k; 
var msg = current_str;
  k=(75/msg.length)+1;
  for(i=0;i<=k;i++) msg+=" "+msg;
  document.form2.ticker.value=msg.substring(position,position+100);
  if(position++==65) position=0;
  id=setTimeout("ticker()",2000/10); }

function action(){
  if(!pause){
    clearTimeout(id);
    pause=1;
  }
  else{
    ticker();
    pause=0;
  }
}
// -->
</SCRIPT>

<TABLE border="0" width="100%" height="5%"> 
 <TR valign ="top" heiht="5%">
 <TD align="left" width=50%>
<form name=frm>
<input type=text size=8 name=clock>
</FORM>
<!--Создадим скрипт, вызывающий показ времени--> 
<script language="JavaScript">vrema();</script>
<!--Функция getHours() получает часы, getMinutes() минуты, а getSeconds() - секунды. 
Строка "document.frm.clock.value=hour+':' +minute+':' +seconds ;" прописывает в поле clock время. 
А строка "timerID = setTimeout("vrema()", 1000); " устанавливает через сколько миллисекунд выходит время 
верности этой функции, и её снова пора обновлять (1000 миллисекунд= 1сек).-->
</html>



Посмотрите, как это выглядит на экране (нажмите!). Продолжение следует...
Вернуться