Перейти к содержимому


Пользователь месяца
ShowPrint ShowPrint 1-й за Сентябрь
Очков активности: 283 2 темы, 21 сообщение, 7 баллов репутации
Сайт: ShowPrint.ru
ТОП самых активных за этот месяц
  • Фотография Medvedoc
    #1

    Medvedoc
    Очков активности: 510 9 тем, 58 сообщений, 4 балла репутации

  • Фотография ShowPrint
    #2

    ShowPrint (ShowPrint.ru)
    Очков активности: 312 Вне конкурса за определение пользователя месяца

  • Фотография Ixman
    #3

    Ixman (o5cat.ru)
    Очков активности: 216 0 тем, 24 сообщения, 6 баллов репутации

  • Фотография BLIK
    #4

    BLIK
    Очков активности: 210 Вне конкурса за определение пользователя месяца

  • Фотография Игорь Ку
    #5

    Игорь Ку (dudesday.ru)
    Очков активности: 126 4 темы, 9 сообщений, 4 балла репутации

  • Фотография WGN
    #6

    WGN (worldgamenews.com)
    Очков активности: 88.5 Вне конкурса за определение пользователя месяца

  • Фотография Алексей111
    #7

    Алексей111 (xvideo24.ru)
    Очков активности: 66 8 тем, 20 сообщений, 1 балл репутации

  • Фотография yuran
    #8

    yuran (yurbol.ru)
    Очков активности: 37.5 1 тема, 22 сообщения, 1 балл репутации

  • Фотография Zevss
    #9

    Zevss (domles43.ru)
    Очков активности: 22.5 2 темы, 9 сообщений, 1 балл репутации

  • Фотография falka
    #10

    falka (mygoodjob.ru)
    Очков активности: 16.5 3 темы, 2 сообщения, 1 балл репутации

  • Показать весь ТОП 10

Kwork.ru - услуги фрилансеров от 500 руб.

Поддержите форум! =)
Апдейты
  • Яндекс тИЦ: 26.09.2018
  • Яндекс выдача: 20.10.2018
Топ 5 участников по репутации


Как сделать часы, которые идут во время просмотра страницы

#1 nitronn

nitronn
  • Неактивные
  • 8 сообщений
  • Репутация: 0
0

Отправлено 05 November 2008 - 20:35

У меня вопрос к веб-мастерам, как мне сделать простые часы, которые будут идти во время просмотра страницы.
Пожалуйста, распишите алгоритм, буду признателен :)

 

 

  • 0

#2 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 05 November 2008 - 22:35

Я так понял тебе нужны динамические часы, сделанные на JavaScript.
Тогда рассмотрим подобный код
<html>
<head>
<title>Часы на JS</title>
</head>
<script type="text/javascript">
<!-- 
function clock() {
	//Блок с часами, div с id="clockdiv"
 var block = document.getElementById('clockdiv');
	// Время в данный момент
 thistime = new Date();
 var hours=thistime.getHours(); //часы
 var minutes=thistime.getMinutes(); //минуты
 var seconds=thistime.getSeconds(); //секунды
   //Если часы = {0,9} то добавляем "0" перед числом
 if (eval(hours) <10) {hours="0"+hours};
   //Если минуты = {0,9} то добавляем "0" перед числом
 if (eval(minutes) < 10) {minutes="0"+minutes};
   //Если секунды = {0,9} то добавляем "0" перед числом
 if (seconds < 10) {seconds="0"+seconds};
   //Собираем время которое будем выводить
 thistime = hours+":"+minutes+":"+seconds;
 block.innerHTML = thistime; //Заносим полученное время в блок
 var timer = setTimeout("clock()", 500); // Таймер на вызов функции clock() каждые 0.5 секунды
}
// - End of JavaScript - -->
</script>
</head>
<body onLoad="clock()">
<div id="clockdiv" style="color: #000;"></div>
</body>
</html>

И так... Разбирём работу скрипта.
1) Когда идёт загрузка страницы, с помощью атрибута тега <body>, onLoad мы вызываем функцию clock()
2) В функции мы определяем текущее время.
3) Затем мы его форматируем, добавляем 0 к времени там, где цифра < 10
4) Собираем время
5) Помещаем данное время в Блок(Если там уже что-то было, то замещаем)
6) С помощью таймера, мы вызываем данную функцию до закрытия страницы браузера каждые полсекунды.

Полсекунды нужны для того, чтобы время проверялось чаще, можно сделать время и секунду, просто полсекунды будет правильнее :)
  • 0

#3 nitronn

nitronn
    Topic Starter
  • Неактивные
  • 8 сообщений
  • Репутация: 0

Отправлено 06 November 2008 - 19:01

Большое спасибо
  • 0

#4 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 07 November 2008 - 22:45

Всегда пожалуйста :)
  • 0

#5 DuMC

DuMC
  • Неактивные
  • 19 сообщений
  • Репутация: 0

Отправлено 19 January 2009 - 22:18

Вот тут посмотри,приличный выбор
  • 0

#6 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 19 January 2009 - 23:07

DuMC, люди в данной ветке не ищут готового, они просят показать пример...
  • 0

#7 DuMC

DuMC
  • Неактивные
  • 19 сообщений
  • Репутация: 0

Отправлено 20 January 2009 - 16:18

ну а там примеров гораздо больше))
  • 0

#8 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 20 January 2009 - 21:46

DuMC, половина скриптов на WoWeb выложены нифига не понимающими в данной теме людьми. Предоставляют ужасные скрипты и пишут к ним такие пояснения "Лучшего скрипта ... вы не найдёте! Он содержит в себе всё!", ну не глупо ли? Большая, а то и вся, часть скриптов без комментариев, и только начинающий человек без них не разберётся.
  • 0

#9 DuMC

DuMC
  • Неактивные
  • 19 сообщений
  • Репутация: 0

Отправлено 22 January 2009 - 15:04

а тот код что выше,можно ведь наложить с помощью PHP на страницу?
  • 0

#10 ZiTosS

ZiTosS
  • Неактивные
  • 5148 сообщений
  • Репутация: 8

Отправлено 22 January 2009 - 20:45

а тот код что выше,можно ведь наложить с помощью PHP на страницу?

Опять неправильно сформулирован вопрос! Вы можете объяснить что значит наложить?
Мы можем сделать так

file.php
<?php
/* PHP КОД */
?>
<html>
<head>
<title>Часы на JavaScript</title>
<?php
/* PHP КОД */
?>
</head>
<script type="text/javascript">
<!--
function clock() {
	//Блок с часами, div с id="clockdiv"
var block = document.getElementById('clockdiv');
	// Время в данный момент
thistime = new Date();
var hours=thistime.getHours(); //часы
var minutes=thistime.getMinutes(); //минуты
var seconds=thistime.getSeconds(); //секунды
   //Если часы = {0,9} то добавляем "0" перед числом
if (eval(hours) <10) {hours="0"+hours};
   //Если минуты = {0,9} то добавляем "0" перед числом
if (eval(minutes) < 10) {minutes="0"+minutes};
   //Если секунды = {0,9} то добавляем "0" перед числом
if (seconds < 10) {seconds="0"+seconds};
   //Собираем время которое будем выводить
thistime = hours+":"+minutes+":"+seconds;
block.innerHTML = thistime; //Заносим полученное время в блок
var timer = setTimeout("clock()", 500); // Таймер на вызов функции clock() каждые 0.5 секунды
}
// - End of JavaScript - -->
</script>
</head>
<body onLoad="clock()">
<div id="clockdiv" style="color: #000;"></div>
<?php
/* PHP КОД */
?>
</body>
</html>

Вставки конечно можем делать. Но что значит в вашем понимании наложить код JavaScript(клиентский язык) на PHP(серверный язык). Ведь вы наверное понимаете, что JS просто на просто вставляется в HTML как и другие теги, только это уже язык программирования. Поэтому вам никто не запрещает использовать JS и HTML на страницах *.php
  • 0

robot

robot
  • Пользователь PRO
  • 2652 сообщений
  • Репутация: 85


Похожие темы

  Название темы Автор Статистика Последнее сообщение

Оформление форума – IPBSkins.ru