阿贾克斯div隐藏并显示隐藏后div加载

阿贾克斯div隐藏并显示隐藏后div加载

问题描述:

我有这个问题。我正在jquery ajaxed网站上工作。我有主要的内容div在中间和顶部的导航。我需要AJAX的内容,因为我有闪光灯背景,以便在每次加载页面后Flash视频不会从头开始。我能做到这一点的唯一方法就是用这种代码:阿贾克斯div隐藏并显示隐藏后div加载

$(document).ready(function(){ 


$.ajaxSetup ({ 
     cache: false 
     }); 

//For loading 
    var ajax_load = "<img src='img/load.gif' alt='loading...' /><p>"; 

// Var 
    var loadPage1 = "page1.html"; 

// Load page 
    $("#page1").click(function(){ 
      $("#content").hide(2000); 
      $("#content").html(ajax_load).load(loadPage1); 
      $("#content").show(2000); 
}); 

所有其他方式获得的股利没有工作,因为有人让插件等,在ajaxed DIV工作问题(内容)。

所以... everythig工作正常 - 但是,div加载它的page1.html内容,并显示它,只有在这之后它才隐藏它并显示它。所以它加载页面,然后做我想要的效果。

我需要排队这一些如何或什么是适当的jQuery方式?我试过延迟,停止等。但似乎无法解决这个问题。这非常简单。

谢谢。

在加载回调处理程序中显示元素。 即:

$("#page1").click(function(){    
    $("#content").hide();    
    $("#content").html(ajax_load).load(loadPage1, function(){ 
     $("#content").show(2000) 
    }); 
}); 
+0

我喜欢它,但如果内容载荷小于2秒? – 2011-02-15 18:17:14

+0

只有在请求完成后才会应用该效果。因此它不会有任何影响。 – Chandu 2011-02-15 18:19:00

.load()需要两个参数,URI和回调负载后触发。 API在这里找到:http://api.jquery.com/load/

function() { 
    $("#content").hide(2000); 
    $("#content").html(ajax_load).load(loadPage1, function() { 
     $("#content").show(2000); 
    }); 
}