JavaScript - забавяне на изпълнение

valqka

Registered
Здравейте, имам следният код:

[js]$(document).ready(function() {
$(".divbox").click(function () {
$(this).effect("bounce", { times:3 }, 300);
});
});[/js]

Как да направя така че, след като отворя страницата където е той, да не се изпълни веднага (да се стартира тази фунцкя), а да изчака 5 секунди?
 
С този код, когато заредиш страницата след 5 секунди елемента с клас divbox ще баунсне 3 пъти:
Код:
$(document).ready(function() { 
    $('.divbox').delay('5000').effect("bounce", { times:3 }, 300);
});

Ето ти и прост пример:
http://jsfiddle.net/8kW88/
 
Fakeheal каза:
С този код, когато заредиш страницата след 5 секунди елемента с клас divbox ще баунсне 3 пъти:
Код:
$(document).ready(function() { 
    $('.divbox').delay('5000').effect("bounce", { times:3 }, 300);
});

Ето ти и прост пример:
http://jsfiddle.net/8kW88/

Явно не си ме разбрал, така ми е добре да се bounce веднага но искам да може да се bounce след 5 секунди (след като са минали 5 секунди кода да е валиден) в смисъл преди да са минали 5 секунди от зареждането на страницата елемента да не може да се bounce
edit: Благодаря все пак
 
Replace каза:
valqka каза:
$(document).ready(function() {
$(".divbox").click(function () {
setTimeout(function() { $(this).effect("bounce", { times:3 }, 300); },5000);
});
});
:idea:

Преди да пусна темата пробвах със същият код но нямаше ефект, и сега няма (скрипта въобще не баца)
btw: малко допълнение, използвам Jquery UI (Bounce ефекта)
 
valqka каза:
Replace каза:
valqka каза:
$(document).ready(function() {
$(".divbox").click(function () {
setTimeout(function() { $(this).effect("bounce", { times:3 }, 300); },5000);
});
});
:idea:

Преди да пусна темата пробвах със същият код но нямаше ефект, и сега няма (скрипта въобще не баца)
btw: малко допълнение, използвам Jquery UI (Bounce ефекта)

То това е ясно, ама не мога да разбера какво искаш да направиш. В кода който ти си дал, след като се кликне на дива divbox той се bounce-ва. Искаш да направиш, така че след като се кликне на дива след 5 секунди той да се bounce-не?

Код:
$(document).ready(function() { 
    $(".divbox").click(function () {
        $(this).delay(5000).effect("bounce", { times:3 }, 300);
    });
});

Edit: Това, което е дал Replace принципно трябва да работи, но явно нещо не се получава при достъпването на елемента чрез this. Не знам защо. Той може да ни обясин, вероятно! :)

Код:
$(document).ready(function() { 
$(".divbox").click(function () {
    setTimeout(
        function() { $('.divbox').effect("bounce", { times:3 }, 300) }
        ,2000
    );
});
});
 
Fakeheal каза:
valqka каза:
Replace каза:

Преди да пусна темата пробвах със същият код но нямаше ефект, и сега няма (скрипта въобще не баца)
btw: малко допълнение, използвам Jquery UI (Bounce ефекта)

То това е ясно, ама не мога да разбера какво искаш да направиш. В кода който ти си дал, след като се кликне на дива divbox той се bounce-ва. Искаш да направиш, така че след като се кликне на дива след 5 секунди той да се bounce-не?

Код:
$(document).ready(function() { 
    $(".divbox").click(function () {
        $(this).delay(5000).effect("bounce", { times:3 }, 300);
    });
});

Edit: Това, което е дал Replace принципно трябва да работи, но явно нещо не се получава при достъпването на елемента чрез this. Не знам защо. Той може да ни обясин, вероятно! :)

Код:
$(document).ready(function() { 
$(".divbox").click(function () {
    setTimeout(
        function() { $('.divbox').effect("bounce", { times:3 }, 300) }
        ,2000
    );
});
});

Понеже страницата ми има slide ефект и докато трае той (докато се разгръща) и като цъкна на div-a с bounce ефекта и не се получава както трябва, искам докато не се разгърне цялата страница (необходимо е определено време - примерно 5 секунди) div-a да няма функцията bounce
 
[js]
$(document).ready(function() {
setTimeout(function(){
$(".divbox").click(function () {
$(this).effect("bounce", {times:3}, 300);
});
}, 5000);
});
[/js]

След като страницата се зареди, setTimeout ще изчака 5 секунди и тогава ще изпълни функцията, която създава event handler за клик събитието на елемента с клас divbox.
 

Back
Горе