Вернуться   Дизайнерский форум » ОБСУЖДЕНИЕ САЙТОВ » Зал дебютантов

Меняющийся цвет средствами Javasrcipt

Обсуждение темы Меняющийся цвет средствами Javasrcipt в разделе Зал дебютантов, часть категории ОБСУЖДЕНИЕ САЙТОВ; Здорово народ! Есть у меня небольшой вопросик. Я написал на ява-скрипте небольшой скриптик для того, чтоб при наведении на определенную ячейку таблицы ее ...


Закрытая тема
 
Опции темы
Старый 04.07.2004, 02:12   #1
Здорово народ! Есть у меня небольшой вопросик. Я написал на ява-скрипте небольшой скриптик для того, чтоб при наведении на определенную
ячейку таблицы ее цвет плавно менялся с одного на другой, и обратно при уведении курсора с этой ячейки. В общем-то скрипт этот работает,
но возникла проблема - если я навел курсор на одну ячейку, и перевожу на соседнюю, которая тоже должна так "мигать", то первая ячейка
не успевает "остыть", т.е. вернуть свой цвет на первоначальный. Если увести курсор на любое другое место, то все работает нормально.
Как с этим можно бороться?

function color_up(i,act,d){
colors = new Array(4);
colors[0]='008000';
colors[1]='009E00';
colors[2]='00BF00';
colors[3]='00DB00';
i++;
d1=d;
if (act==1)
k=i;
else
k=4-i;

switch(d){
case 1:
f1.style.backgroundColor=colors[k];
break;
case 2:
f2.style.backgroundColor=colors[k];
break;
case 3:
f3.style.backgroundColor=colors[k];
break;
case 4:
f4.style.backgroundColor=colors[k];
break;
case 5:
f5.style.backgroundColor=colors[k];
break;
case 6:
f6.style.backgroundColor=colors[k];
break;
case 7:
f7.style.backgroundColor=colors[k];
break;
case 8:
f8.style.backgroundColor=colors[k];
break;
case 9:
f9.style.backgroundColor=colors[k];
break;
case 10:
f10.style.backgroundColor=colors[k];
break;
case 11:
f11.style.backgroundColor=colors[k];
break;
case 12:
f12.style.backgroundColor=colors[k];
break;
case 13:
f13.style.backgroundColor=colors[k];
break;
case 14:
f14.style.backgroundColor=colors[k];
break;
case 15:
f15.style.backgroundColor=colors[k];
break;
case 16:
f16.style.backgroundColor=colors[k];
break;
}

if (i<5) {
n=i;
a=act;
window.setTimeout("color_up(n,a,d1);",34);
}
}

переменная act определяет "направление" - с какого цвета на какой, d - номер ячейки. Кстати как можно избавиться от неудобного применения
switch? Т.е. чтобы номер ячейки подсовывать прямо в style.backgroundcolor ...
Соответственно вызывается эта функция так:
<td id=f1 align=center onmouseover="color_up(0,1,1);" onmouseout="color_up(0,0,1);">
<td id=f2 align=center onmouseover="color_up(0,1,2);" onmouseout="color_up(0,0,2);"> и т.д.

Пример вы можете посмотреть на http://pristavka.com/misc/new там слева менюшка.
 
Старый 04.07.2004, 02:12
Ссылки
Старый 06.07.2004, 18:46   #2
Web

Ни знаыу. Лень мне в ето дело вникать, но могу дать ценнии совет - http://myweb.ru/. Tam v scriptah v JS est' takoi NEGLUKANUTII scriptik.
 
Старый 06.07.2004, 18:46
Закрытая тема




Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
как показать картинку средствами php kostia ASP, Perl, PHP и MySQL 0 04.12.2012 23:54
рисунок средствами php kostia ASP, Perl, PHP и MySQL 0 28.11.2012 01:35
Цвет прокрутки MadMaxim HTML, CSS, JavaScript 8 10.02.2006 22:12
оформление средствами css mod HTML, CSS, JavaScript 6 27.04.2005 01:16
Постраничный вывод средствами Php Lloyd HTML, CSS, JavaScript 1 26.02.2004 20:46


Текущее время: 13:17. Часовой пояс GMT +4.

Реклама на форуме Условия размещения рекламы
Биржа ссылок Заработай на сайте!
Дизайнерский форум