PDA

Просмотр полной версии : задержка rollOver


zzz_dmg
08.11.2008, 23:59
а можно ли сделать, чтобы кнопка сробатывла при наведении мыши не сразу, а через некоторое время. т.е. мышку надо продержать над кнопкой, например, секунду. чтобы исключить ситуацию, при которой пользователь просто проводит мышкой по экрану, а в этот момент срабатывают ролловеры всех кнопк.

scarbo
09.11.2008, 00:18
Да,запросто.Один из вариантов - my_btn.onRollOver = function(){
setTimeout(function(){тра-ля-ля},1000);
}

Mnilionic
09.11.2008, 02:13
var intr_over;

my_btn.onRollOver = function(){
clearInterval(intr_over);
intr_over = setInterval(func, 1000);
}
my_btn.onRollOut = function(){
clearInterval(intr_over);
}

function func(){
clearInterval(intr_over);
trace('оппа');
}

zzz_dmg
09.11.2008, 12:19
в таком случае у меня получается, что с задержкой выполняется все, что прописанно в функции. но у меня кнопка представляет собой клип, в котором на шкале прописаны состояние для over и out (через метки). мне необходимо чтобы именно они происходилы с задержкой, а так они не были описаны программно, я не могу их в функцию поместить -> задержка для них не происходит. как быть в такой ситуации?

Wolsh
09.11.2008, 12:57
а так они не были описаны программно, я не могу их в функцию поместитьНазовите метки по-своему и переводите на них клип из функции)))
my_btn.gotoAndStop("isOver");

zzz_dmg
09.11.2008, 13:43
ага. так все работает. спс)

skald
09.11.2008, 13:54
я такую тему делал с интервалами. т.к в любой момент (к примеру на RollOut) можно его отменить)))) и если ты навел на кнопку, а потом убрал курсор, то ничего не произойдет ))

zzz_dmg
09.11.2008, 15:42
это как в коде от Mnilionic.
если навести и убрать мышь в промежуток заданного интервала ничего происходить не будет. так?