问题描述
我看到这里有很多问题,但是似乎无法在我的网站中正确实现。我正在尝试让我的预加载器在消失之前以gif的长度(3秒)运行。我的代码是
jQuery(document).ready(function($) {
$(window).load(function(){
jQuery('#preloader').fadeOut('slow',function(){jQuery(this).remove();});
});
});
我看到我可能应该使用setTimeout,但是我似乎无法弄清楚。有提示吗?
我意识到这里的代码是在页面加载时而不是在时间之后执行淡出的,但是在实现页面时却遇到了麻烦。
解决方法
由于fadeOut()
使用jQuery fx
队列,您可以使用delay()
来实现:
jQuery($ => {
$(window).on('load',() => {
$('#preloader').delay(3000).fadeOut('slow',function() {
$(this).remove();
});
});
});
或者,您可以使用问题中提到的setTimeout()
:
jQuery($ => {
$(window).on('load',() => {
setTimeout(() => {
$('#preloader').fadeOut('slow',function() {
$(this).remove();
});
},3000);
});
});