[英]Execute code only after a non-thenable, asynchronous function completes
我只想在flexslider()
函数完成后才执行代码。 问题在于flexslider()
不会返回promise或其他thenable。
所以我对setTimeout
应用了这个讨厌的解决方法,我想摆脱它。 仅在flexslider
初始化后, flexslider
可以重构它并执行我的代码吗?
(function($) {
$('.flexslider').flexslider({
animation: "slide",
controlNav: false
});
setTimeout(function() {
var $navBar = $('.primary-nav');
var navbarPosition = $navBar.offset().top;
$(window).scroll(function() {
var scrollPosition = $(this).scrollTop();
if (scrollPosition >= navbarPosition) {
$navBar.addClass('navbar-fixed');
} else {
$navBar.removeClass('navbar-fixed');
}
});
}, 1000);
})(jQuery);
如何使用start:
$('.flexslider').flexslider({
animation: "slide",
controlNav: false,
start: function(){
// do something....
}
});
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.