Обратный отсчет на сайте
Привет всем, начал изучать js, пока дикий лес для меня, есть задача сделать обратный отсчет на сайте:
1. чтобы он считал каждый день 2. чтобы он считал с 7 до 8 "выводил например: 1 акция, " 8 до 9 " выводил 2 акция 3. до конца акции осталось минут, секунд Подскажите, в каком направлении думать хотя бы... |
wegas,
форум - поиск - таймер |
есть код, но работа его некорректна, работает почему то с 8 - 30 до 9 а должен до 10, а потом начинает считать с 9 30 и досчитывает до 10, не знаю как исправить
пожалуйста помогите!? <html> <head> <title>Таймер обратного отсчёта</title> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <script src="jquery.js"></script> <script type="text/javascript"> $(document).ready(function(){ /*первый запуск функции*/ countdown(); /*сама функцияи*/ function countdown(){ /*текущая дата*/ var nowDate=new Date(); /*время до начала пары №1*/ var endAction1=new Date(); endAction1.setHours(8); endAction1.setMinutes(30); endAction1.setSeconds(59); /*время до окончания пары №1*/ var endAction2=new Date(); endAction2.setHours(9); endAction2.setMinutes(59); endAction2.setSeconds(59); /*время до начала пары №2*/ var endAction3=new Date(); endAction3.setHours(10); endAction3.setMinutes(15); endAction3.setSeconds(59); /*время до окончания пары №2*/ var endAction4=new Date(); endAction4.setHours(11); endAction4.setMinutes(45); endAction4.setSeconds(59); /*время до начала пары №3*/ var endAction5=new Date(); endAction5.setHours(11); endAction5.setMinutes(59); endAction5.setSeconds(59); /*время до окончания пары №3*/ var endAction6=new Date(); endAction6.setHours(13); endAction6.setMinutes(30); endAction6.setSeconds(59); /*Для того чтобы добавить события нужно прописать верхний скрипт, но изменить имя endAction"X" И также добавить скрипты ниже!*/ /*Если занятий нету*/ if(14<=nowDate.getHours() && nowDate.getHours()<=23){ $('#actionname').text("Сейчас занятий нету"); $('#timer').hide() } /*если есть то показываем таймер */ else{ $('#timer').show(); } /*Начало первой пары*/ if(8<=nowDate.getHours() && nowDate.getHours()<=8 && nowDate.getMinutes()<=30){ $('#actionname').text("До начала первой пары"); timertotal(endAction1); } /*Окончание первой пары*/ if(8<=nowDate.getHours() && 30<=nowDate.getMinutes() && nowDate.getHours()<=10){ $('#actionname').text("До окончания первой пары"); timertotal(endAction2); } /*Начало второй пары*/ if ((10<=nowDate.getHours() && nowDate.getHours()<=10 && nowDate.getMinutes()<=15)) { $('#actionname').text("До начала второй пары"); timertotal(endAction3); } /*Окончание второй пары*/ if (10<=nowDate.getHours() && 15<=nowDate.getMinutes() && nowDate.getHours()<=11 && nowDate.getMinutes()<=45) { $('#actionname').text("До окончания второй пары"); timertotal(endAction4); } /*Начало третьей пары*/ if (11<=nowDate.getHours() && 45<=nowDate.getMinutes() && nowDate.getHours()<=12) { $('#actionname').text("До начала третьей пары"); timertotal(endAction5); } /*Окончание третьей пары*/ if((12<=nowDate.getHours() && nowDate.getHours()<=13 && nowDate.getMinutes()<=30) || nowDate.getHours()==0){ $('#actionname').text("До окончания третьей пары"); timertotal(endAction6); } function timertotal(endAction){ var h=endAction.getHours()-nowDate.getHours(); if(nowDate.getHours()>=21) { var h=24-nowDate.getHours(); } var m=endAction.getMinutes()-nowDate.getMinutes(); var s=endAction.getSeconds()-nowDate.getSeconds(); if (m<10){m="0"+m} if (s<10){s="0"+s} $('#timetoEnd').text(h+":"+m+":"+s); } /*самозапуск функции каждую секунду*/ setTimeout(countdown,1000); } });/*end ready*/ </script> <style> #actionname{ font-size:18px; margin-bottom:5px; color: darkgreen; } </style> </head> <body style="padding-left:140px;"> <div id="actionname"></div> <div id="timer"> ОСТАЛОСЬ: <span id="timetoEnd"></span></div><br/> </body> </html> |
Пожалуйста, отформатируйте свой код!
Для этого его можно заключить в специальные теги: js/css/html и т.п., например: [js] ... ваш код... [/js] О том, как вставить в сообщение исполняемый javascript и html-код, а также о дополнительных возможностях форматирования - читайте http://javascript.ru/formatting. |
Часовой пояс GMT +3, время: 09:06. |