function x()
{
timer=setInterval("y()", 100);
}
Как сделать, чтобы пока таймер работает, при наведении мыши повторно ,данная функция уже не выполнялась?
Спустя 5 минут, 2 секунды (28.03.2010 - 12:01) sergeiss написал(а):
Цитата (Guest @ 28.03.2010 - 12:56) |
Как сделать, чтобы пока таймер работает, при наведении мыши повторно ,данная функция уже не выполнялась? |
Да просто, вобщем-то. Надо в самом начале создать переменную, присвоить ей FALSE. Перед запуском таймера присвоить этой переменной значение TRUE. И по окончании времени таймера опять присвоить ей значение FALSE.
А в функции обработки события проверять значение этой переменной. Если TRUE - не выполнять функцию, если FALSE - выполнять.
Спустя 13 секунд (28.03.2010 - 12:02) glock18 написал(а):
1. mousein
2. ставить флаг внутри нее, а прежде проверять не стоит флаг уже
3. удалять функцией себя из обработчиков события в начале выполнения, а после выполнения снова ставить себя обработчиком этого же события.
PS: не успел, sergeiss второй вариант расписал.
2. ставить флаг внутри нее, а прежде проверять не стоит флаг уже
3. удалять функцией себя из обработчиков события в начале выполнения, а после выполнения снова ставить себя обработчиком этого же события.
PS: не успел, sergeiss второй вариант расписал.
Спустя 23 часа, 18 минут, 59 секунд (29.03.2010 - 11:21) Guest написал(а):
ммм, ну идею понял, но немного все усложнилось.
на одном элементе два события onmouseover и onmouseout. оба события вызывают по одной функции, нужно, чтобы пока работала функция одного события другое событие было недоступно!
на одном элементе два события onmouseover и onmouseout. оба события вызывают по одной функции, нужно, чтобы пока работала функция одного события другое событие было недоступно!
Спустя 36 минут, 10 секунд (29.03.2010 - 11:57) glock18 написал(а):
Guest
любой из вариантов 2, 3 подходит для этого
любой из вариантов 2, 3 подходит для этого
