我已将此 jQuery 规则设置.preloader
为不显示
$(".preloader").css("display", "none");
我如何希望它以淡出效果消失,并且在它淡出缩小时,我不知道如何做缩小效果,但我尝试应用它使其淡出
$(".preloader").css("display", "none").fadeOut("200");
这怎么行不通。您能否建议如何实现这两种效果?此外,解决方案会反之亦然吗?(淡入,放大到原来的大小)
我已将此 jQuery 规则设置.preloader
为不显示
$(".preloader").css("display", "none");
我如何希望它以淡出效果消失,并且在它淡出缩小时,我不知道如何做缩小效果,但我尝试应用它使其淡出
$(".preloader").css("display", "none").fadeOut("200");
这怎么行不通。您能否建议如何实现这两种效果?此外,解决方案会反之亦然吗?(淡入,放大到原来的大小)
为了使其淡出,只需使用fadeOut()
. 动画的结尾其实就是display: none
给元素设置了一个a:
$(".preloader").fadeOut("200");
$(".preloader").css("display", "none").fadeOut("200");
此代码首先隐藏 .preloader,然后尝试淡出,这是不可能的,因为它已经隐藏了。
尝试这个:
$(".preloader").fadeOut(200);
或者
$(".preloader").fadeOut("fast");
$(".preloader").toggle('hide');
并且$(".preloader").toggle('show');
应该这样做,但$.toggle()
如果你不关心display
状态是什么,它本身就可以工作。
然而,
$(".preloader").stop(true,false).animate({
width: 'toggle',
height: 'toggle',
opacity: 'toggle'
});
更酷,你只需要一个声明。你也可以使用boolean
with $.toggle(yourShowStateBooleanVariableGoesHere)
。
另外,我建议您使用id
而不是class
选择器,除非它绝对必须应用于所有class
es(我觉得很少见)。
$(".preloader").hide().fadeIn("200");
$(".preloader").fadeOut("200");
当淡出效果完成时,它会将显示设置为无,因此您不需要 css 方法。
$(document).ready(function(){
$(".preloader").hover(function(){
$(".preloader").fadeOut();
}, function(){
$(".preloader").fadeIn();
});
});
这应该会给你一些提示。
如果您还想缩小,这可能是一个可能的解决方案:
$('.preloader').animate({width: 'toggle', height: 'toggle', opacity: 'toggle'}, 1000);
使用相同的方法将其取回。
看看小提琴。