|
|
Модератор форума: JonMagon |
Сообщество uCoz » Вебмастеру » JavaScript, Flash и прочие технологии » JavaScript » javascript отсчёта дат и нагрузка на сайт |
javascript отсчёта дат и нагрузка на сайт |
Доброго Вам Времени. Я администратор проекта "Аниме с рутуба" (anime-rutub.moy.su). На днях мы занялись сменой дизайна и вёрстки главной странички нашего проекта, при котором имеется 7 скриптов, определяющих сколько дней осталось до нужной даты. И вот соответственно вопрос:
Не перегрузят ли скрипты дат сайт с проходимостью от 1000 человек в сутки и не получится IP бан и так далее!? Прилагаю материалы: Скрин места скриптов типовой код одного из скриптов Код <script language="JavaScript"> d1 = new Date('july 1, 2014'); dr = new Date(); dt = (dr.getTime() - d1.getTime()) / (1000*60*60*24); document.write('<B><SPAN style="COLOR: #faca0a">' + Math.round(dt) + 'дней</SPAN></B>'); </script> Прикрепления:
4057500.jpg
(172.8 Kb)
|
|
у вас 1438 символов
на выходе сократил до 726 (так же 7 материалов) экономия 712 символов (все посчитано не учитывая пробелы) Может пригодится) Код <style type="text/css">.RD{ color:#faca0a; font-weight: bolder;}</style> // ну стили думаю знаем куда втыкать(главное, что бы не прям в код ибо это только для проверки) <script language="JavaScript">function RD(D){d1=new Date(D);d2=new Date();a=Math.round((d2.getTime()-d1.getTime())/(1000*60*60*24));a=a-a-a;if(a>=0){c=[2,0,1,1,1,2];t=['ень','ня','ней'];n=a;return document.write('Начнется через <span class=\"RD\">'+a+' д'+t[(n%100>4&&n%100<20)?2:c[(n%10<5)?n%10:5]]+'</span>')}}</script> // Скрипт изменяем как нужно и благополучно суем в .js файлик который подключен <script>RD('месяц день, год');</script> // вызов строки, выведет - "Начнется через X дней" <script>RD('11 25, 2014');</script> //Аналогично - Начнется через X дней при указывании даты меньше текущей, ничего не выводится Вот что вышло у меня: Добавлено (26 Апр 2014, 02:00:13) --------------------------------------------- Максимально сократил(214 символов), выводит только X дней/дня/день: Код function RD(D){q=new Date(D);w=new Date();a=Math.round((w.getTime()-q.getTime())/(1000*60*60*24));n=a=a-a-a;c=[2,0,1,1,1,2];t=['ень','ня','ней'];return document.write(a+' д'+t[(n%100>4&&n%100<20)?2:c[(n%10<5)?n%10:5]];)} Вызов такой же: <script>RD('12 12, 2014');</script> В общем я чего хотел того и добился +47 символов к вашему коду в ТС Помог? - Ставь "+" в репу ^____^
Сообщение отредактировал Badumm0605 - Суббота, 26 Апр 2014, 02:02:31
|
Badumm0605, спасибо! Попробуем в ближайшее время ваш скрипт применить!
Добавлено (30 Апр 2014, 14:13:27) Код <script type="text/javascript" src="http://anime-rutub.moy.su/amv_cent/timesdat.js"></script> и теперь я решил добавить условия по которым при старте конкурса меняется отсчёт на другое название с помощью уловных комментариев Код <div class="images_fuku"> <div class="inform1"> <a href="http://anime-rutub.moy.su/news/konkurs_anime_karikatura/1-0-155" target="_blank"> <img class="img_konkurs" src="http://anime-rutub.moy.su/amv_cent/anime_karikatura.png" alt="$TITLE$"> <i></i> <bdo dir="ltr"> <b>Конкурс Аниме Карикатура</b> <span>Аниме Карикатура $YEAR$ <?if($MONTH$='5')?><span style="color: #faca0a">Уже начался и проходит с 1 по 31 Мая!</span><?endif?><?if($MONTH$='6')?><span style="color: #faca0a">Завершился и проходит голосование!</span><?else?> <script>RD('5 1, 2014');</script><?endif?></span></bdo></a></div></div> ещё раз большое спасибо за помощь!! |
| |||
| |||