У меня есть jQuery расширенная функция, которая работает отлично, но когда я передаю ее через setTimout, она немедленно не ожидает установленный период и выполнения.
jQuery(document).ready(function($) {
setTimeout($.mainmenuslider({
trigger:'close'
}),6000);
});
Какие-либо идеи???
Вам нужно передать анонимный метод, чтобы делать то, что вы хотите, например:
jQuery(function($) {
setTimeout(function() {
$.mainmenuslider({
trigger:'close'
});
}, 6000);
});
В противном случае вы пытаетесь передать результат функции (заставляя ее выполняться немедленно и ничего не запускать позже ).
Вы вызываете функцию прямо здесь, когда пытаетесь установить тайм-аут, который произойдет позже. Instead:
jQuery(function($) {
setTimeout(function() {
$.mainmenuslider({trigger:'close'});
}, 6000);
});
Попробуйте это!!!
jQuery(document).ready(function($) {
setTimeout("$.mainmenuslider({
trigger:'close'
})",6000);
});
при использовании setTimeout() всегда старайтесь указывать действие, которое необходимо вызвать, в кавычках.
Ex:
setTimeout("call_this_function()", 4000);