S.o.s.! Моргание ссылок при наведении на них курсора

  • Автор темы Myborisov
  • Дата начала
Статус
Закрыто для дальнейших ответов.
M

Myborisov

#1
Возникла необходимость сделать так, чтобы ссылка, при наведении на неё курсора, моргала, как стробоскоп в клубах. Ссылка будет на темном фоне светлой. Моргание хотелось бы чтобы происходило в холодных сине-голубых тонах.

Есть подобный скрипт, который изменяет цвет ссылок при наведении. Но он меняет его на радужные цвета и работает только в IE.

Привожу его код:

Код:
<script 
language="Javascript"> 
var rate = 20; 
var obj; 
var act = 0; 
var elmH = 0; 
var elmS = 128; 
var elmV = 255; 
var clrOrg; 
var TimerID; 
if (navigator.appName.indexOf("Microsoft",0) != -1 && parseInt(navigator.appVersion) >= 4) { 
Browser = true; 
} else { 
Browser = false;} 
if (Browser) { 
document.onmouseover = doRainbowAnchor; 
document.onmouseout = stopRainbowAnchor;} 
function doRainbow(){ 
if (Browser && act != 1) { 
act = 1; 
obj = event.srcElement; 
clrOrg = obj.style.color; 
TimerID = setInterval("ChangeColor()",100);}} 
function stopRainbow(){ 
if (Browser && act != 0) { 
obj.style.color = clrOrg; 
clearInterval(TimerID); 
act = 0;}} 
function doRainbowAnchor(){ 
if (Browser && act != 1) { 
obj = event.srcElement; 
while (obj.tagName != 'A' && obj.tagName != 'BODY') { 
obj = obj.parentElement; 
if (obj.tagName == 'A' || obj.tagName == 'BODY') 
break;} 
if (obj.tagName == 'A' && obj.href != '') { 
act = 1;//osw 
clrOrg = obj.style.color; 
TimerID = setInterval("ChangeColor()",100);}}} 
function stopRainbowAnchor(){ 
if (Browser && act != 0) { 
if (obj.tagName == 'A') { 
obj.style.color = clrOrg; 
clearInterval(TimerID); 
act = 0;}}} 
function ChangeColor(){ 
obj.style.color = makeColor();} 
function makeColor(){ 
if (elmS == 0) { 
elmR = elmV; elmG = elmV; elmB = elmV;} 
else { 
t1 = elmV; 
t2 = (255 - elmS) * elmV / 255; 
t3 = elmH % 60; 
t3 = (t1 - t2) * t3 / 60; 
if (elmH < 60) { 
elmR = t1; elmB = t2; elmG = t2 + t3;} 
else if (elmH < 120) { 
elmG = t1; elmB = t2; elmR = t1 - t3;} 
else if (elmH < 180) { 
elmG = t1; elmR = t2; elmB = t2 + t3;} 
else if (elmH < 240) { 
elmB = t1; elmR = t2; elmG = t1 - t3;} 
else if (elmH < 300) { 
elmB = t1; elmG = t2; elmR = t2 + t3;} 
else if (elmH < 360) { 
elmR = t1; elmG = t2; elmB = t1 - t3;} 
else { 
elmR = 0; elmG = 0; elmB = 0;}} 
elmR = Math.floor(elmR);//fantasyflash.ru 
elmG = Math.floor(elmG); 
elmB = Math.floor(elmB); 
clrRGB = '#' + elmR.toString(16) + elmG.toString(16) + elmB.toString(16); 
elmH = elmH + rate; if (elmH >= 360) elmH = 0; 
return clrRGB;}</script>



Может кто знает, как сделать моргание наподобие "стробоскопа" ??? :D

Заранее благодарен!
 
L

LENAALIK

#2
<HEAD>
<script language="JavaScript">
<!--
function initArray() {
for (var i = 0; i < initArray.arguments.length; i++) {
this = initArray.arguments;
}
this.length = initArray.arguments.length;
}

// Вы можете заменить цвета или добавить свои, этот
// скрипт будет поочередно перебирать каждый.
var colors = new initArray(
"#008000",
"green",
"#000000",
"#D3CF18",
"#C6C68C",
"green",
"blue",
"darkblue",
"purple",
"black",
"red",
"lime",
"yellow");

pause_time = .2; // задержка переключения цветов (в секундах)

link = 0; // начальный цвет (см. список цветов) для непосещенной ссылки
vlink = 4; // начальный цвет для посещенной ссылки

function linkDance() {
link = (link+1)%colors.length;
vlink = (vlink+1)%colors.length;
document.linkColor = colors[link];
document.vlinkColor = colors[vlink];
setTimeout("linkDance();",pause_time*1000);
}
linkDance();
// -->
</script>
</HEAD>

Воть. Тока еще сюда примени при наведении, а то так оно все время мигать бует.
 
M

Myborisov

#3
Ой!... Спасибо за скрипт! Но я в java-script полный ноль...
А как сделать - чтобы моргало только при наведении на ссылку??? :)
 
L

LENAALIK

#4
Не за что. Ты хоть посмотри: работает или нет... а то я не проверяла :(
Используй онклик. :D
 
M

Myborisov

#5
Не за что. Ты хоть посмотри: работает или нет... а то я не проверяла :unsure:
Используй онклик. :)
Скрипт работает. А как использовать этот "онклик"?

Это потом для каждой ссылки надо будет онклик прописывать? Или как. Мне бы хотелось, чтобы в скрипте это было как-то заложено. Так как сайт будут обновлять несколько человек при помощи визивиг-редактора, ссылки там автоматом генерируются (тэги <a></a>).
 
Статус
Закрыто для дальнейших ответов.