我希望有一个div,它拥有一个淡出,卸载的PHP页面,然后在每个菜单上淡入新页面:
$('#home').click(function() {
$('#page_container').fadeOut(500).unload();
$('#page_container').load('php/home.php').fadeIn(550);
});
由于某种原因,它在第一个实例淡出之前闪烁,淡出并重新加载。
有人可以帮我解决这个问题。我确信它很简单,但我似乎无法找到合适的语法来使它工作?
答案 0 :(得分:2)
您应该在淡入淡出功能的回调中设置load()
调用:
$("#home").on("click", function () {
$('#page_container').fadeOut('fast', function() {
$(this).unload();
$(this).load('php/home.php');
});
})
一旦淡入淡出完成,这将触发load()
。
fadeOut()
是异步的,因此下一行在调用后立即执行。您的问题是由于load()
在内容开始淡出时立即将内容加载到div中而引起的。
答案 1 :(得分:1)
如果没有演示,很难完全理解,但是你看过使用回调吗?
$('#home').click(function() {
$('#page_container').fadeOut(500, function(){
$(this).unload();
$('#page_container').load('php/home.php', function(){
$(this).fadeIn(550)
});
});
});