Войти

Показать полную графическую версию : помогите с очень интересным скриптом!


oIo_DeN_oIo
03-07-2005, 02:57
Вообщем идея такова. Чтоб дизайн менялся относительно времеён года тоесть 1 числа каждой поры менялись несколько.jpg картинок а точнее (3-4). Я вот встретил скрипт как сделать подобное но только ночь/день. вот он:
<html>
<head>
<title>Смена фона в зависимости от времени</title>
<meta content="text/html; charset=windows-1251" http-equiv="Content-Type">
<script language="JavaScript">
theTime = new Date();
theHour = theTime.getHours();
if(theHour>6&&theHour<18){
document.write('<body background ="day.gif" text="black">');
}
else{
document.write('<body background ="night.gif" text="white">');
}
</script>
</head>
<body>
<p align="center">&nbsp;</p>
<p align="center">&nbsp;</p><p align="center"><font size="4"><b>Смена фона в зависимости от
времени</b></font></p>
</body>
</html>

а такой как надо ненашёл нигде..если кто знает или есть скрипт дайте прийз!
ЗАРАНИЕ ОГРОМНОЕ СПАСИБО!

Prisoner
03-07-2005, 04:15
Обращаться не к методу getHours, но к методу getMonth, который вернет число текущего месяца с январем в качестве точки отсчета. Строить логику нужно соответствующим образом.

oIo_DeN_oIo
03-07-2005, 13:35
мдя, я не очень хорошо разбираюсь в ява скриптах просто спрашиваю может у кого есть? либо есть жилание написать...

Prisoner
04-07-2005, 02:32
<html>
<head>
<title>Смена фона в зависимости от времени</title>
<meta content="text/html; charset=windows-1251" http-equiv="Content-Type">
</head>
<script language="JavaScript">
theTime = new Date();
theMonth = theTime.getMonth();
if (theMonth >= 2 && theMonth <= 4)
document.write('<body background ="spring.gif">');
else
if (theMonth >= 5 && theMonth <= 7)
document.write('<body background ="summer.gif" text="white">');
else
if (theMonth >= 8 && theMonth <= 10)
document.write('<body background ="autumn.gif" text="white">');
else
document.write('<body background ="winter.gif" text="white">');
</script>
<p align="center"> </p>
<p align="center"> </p><p align="center"><font size="4"><b>Смена фона в зависимости от
времени</b></font></p>
</body>
</html>
Реализовано глупо и просто.

oIo_DeN_oIo
04-07-2005, 03:30
спасибо!!!
P.S. А если надо несколько рисунков поменять тогда дописать summer1.jpg
if (theMonth >= 5 && theMonth <= 7)
document.write('<body background ="summer.gif" imgscr= ''summer1.jpg'' text="white">');
и прописать это во всех временах..?

slaine
04-07-2005, 22:12
Prisoner
почему глупо?

Prisoner
05-07-2005, 02:09
oIo_DeN_oIo
Что значит "если надо несколько рисунков поменять"?
slaine
Топорно, неизящно - каскад условий... switch тут в самый раз.

oIo_DeN_oIo
05-07-2005, 03:03
ну дапустим не бэкграунд а если сайт составлен из 4 картинок допустим квадрат разрезать на 4 части и каждые 4 части надо чтоб соответствовали времени года.. (либо + ещё 1 слой <div>)

Prisoner
05-07-2005, 03:28
<script language="JavaScript">
theTime = new Date();
theMonth = theTime.getMonth();
if (theMonth >= 2 && theMonth <= 4)
document.write('<img src ="spring#X.gif" alt="some_alt_text" width="some_width" height="some_height" border="0">');
else
if (theMonth >= 5 && theMonth <= 7)
document.write('<img src ="summer#X.gif" alt="some_alt_text" width="some_width" height="some_height" border="0">');
else
if (theMonth >= 8 && theMonth <= 10)
document.write('<img src ="autumn#X.gif" alt="some_alt_text" width="some_width" height="some_height" border="0">');
else
document.write('<img src ="winter#X.gif" alt="some_alt_text" width="some_width" height="some_height" border="0">');
</script>
Вставлять вышеприведенный кусок кода туда где нужен вывод картинки №X (от 1 до 4 в вашем случае). Опять-таки, это не оптимально - одинаковый код присутствует X раз в теле документа. Луше сделать функцию.

oIo_DeN_oIo
06-07-2005, 00:57
Всё работает великолепно!
all thanks to Prisoner




© OSzone.net 2001-2012