Изменить работу скрипта JS

S3
На сайте с 29.03.2012
Offline
367
565

Возникла маленькая проблема.

На сайте показывается рекламное обьявление с помощью такого скрипта:

if (cookies.visits < 10 ){

if (cookies.showadv != "off"){
//alert('реклама показывается')
var delay_popup = 2000;
setTimeout('$("#popup").fadeIn(3000)',delay_popup);
//setTimeout("document.getElementById('popup').style.display='block'", delay_popup);
var delay_popup1 = 8000;
setTimeout('$("#popup").fadeOut(6000)',delay_popup1);
//setTimeout("document.getElementById('popup').style.display='none'", delay_popup1);

}
else{
//alert('Реклама не показывается')
}}

Но хочется сделать, что бы при наведении на него мышью оно фиксировалось и не исчезало, убираешь - медленно пропадало. как можно отменить действие timeout или переназначить время ?

Пока проблема даже в алгоритме...

ДП
На сайте с 23.11.2009
Offline
203
#1

Для отмены действия setTimeout надо сохранить значение, которое возвращает эта функция. И потом удалить этот таймаут через clearTimeout() c передачей ему сохраненного параметра. А по уводу мышки запускайте таймаут заново.

S3
На сайте с 29.03.2012
Offline
367
#2
Дикий пионер:
Для отмены действия setTimeout надо сохранить значение, которое возвращает эта функция. И потом удалить этот таймаут через clearTimeout() c передачей ему сохраненного параметра. А по уводу мышки запускайте таймаут заново.

Шикарно!!! То что надо - все работает! Спасибо огромное!

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий