Natalymath
Новичок
Дата регистрации:
10.06.2011 06:20:37
Сообщений: 2
Код функции выполняется мгновенно, а setTimeOut влияет только на скорость вывода полученных данных на экран, но не на скорость выполнения команд.
Т.е. каждый раз при движении указателя над кнопкой запускаются сначала одна функция, потом другая, и обе выполняются полностью, до конца цикла.
Единственный выход, который я вижу - брать начальный и конечный цвета кнопки гармонично подходящими. Например:
<html>
<head>
<script language = "javascript">
var flag;
function mouseOver() {
flag=true;
for (i = 16; (i < 240)&&(flag==true); i++)
setTimeout ('document.blinkbutton.button.style.background = "#'+i.toString(16)+'FF33";', i * 3);
}
function mouseOut() {
flag=false;
for (i = 16; (i < 240)&&(flag==false); i++)
setTimeout ('document.blinkbutton.button.style.background = "#'+(256-i).toString(16)+'FF33";', i * 3);
}
</script>
</head>
<body>
<form name = "blinkbutton">
<input type="button" name="button" value=" Наведи мышку " onMouseOver='mouseOver()' onMouseOut='mouseOut()' style="background-color: #10FF33;">
</form>
</body>