jQuery .unload()忽略fadeOut并跳过
首先,对于双重问题抱歉,但我觉得这是一个非常不同的方式。jQuery .unload()忽略fadeOut并跳过
我:
$(document).ready(function(){
$('#container').fadeOut(0);
$('#container').fadeIn(500);
$(window).unload(function(){
alert("Hello.");
$('#container').fadeOut(500);
});
});
应该通过逐渐把它显示在页面上,并使其通过逐渐把它隐没卸载。但是,当我退出页面或提交其中的表单时,我只能看到该提醒,但在按下确定后,该页面就会消失并显示下一个。淡入淡出未执行。
我该如何解决这个问题?
任何调用unload的过程都需要同步。我相信fadeOut
方法会调用一些异步回调。因此,当您拨打fadeOut
时,会设置多个回调以供制作动画。但是,卸载不会等待。
检出this question自己构建动画。
@Jordan问题是:“我该如何解决这个问题?” – 2011-03-09 17:51:07
好点..现在编辑答案。 – Jordan 2011-03-09 17:52:28
这应该可行,但是如何才能让动画只在需要卸载时执行?将动画放入卸载调用中会得到相同的结果。 – 2011-03-09 17:59:03
更好:'$( '#集装箱')隐藏()淡入(500 );' – 2011-03-09 17:46:41
你需要的是一个同步淡出。 'fadeOut'本身不会这样做,因为它是异步的。 – 2011-03-09 17:48:02