发送数据类型为html的ajax post请求时,我的页面会冻结

时间:2015-05-13 14:53:59

标签: jquery ajax

我有这个ajax帖子脚本。

$('#pagesfilter a').click(function(e){
    var realname = $(this).attr("data-realname");
     $.ajax({
       url: "/ajaxpage",
       type: "POST",
       dataType: "html",
       data: { page: $(this).attr('data-page') },
       //cache: false,
       async:true,
       beforeSend: function() { //show loading animation 
            $('.whiteblur').show();
            $('.windows8').show();
         },
         complete: function(){ //hide loading animation
            $('.windows8').hide();
            $('.whiteblur').hide();
         },
       success: function(data){ //display the requested page
          $("#main_content_wrapper").html(data);
          $('.breadcrumb .active a').attr("href", "#");
          $('.breadcrumb .active a').text(realname);
       }
    });

    $(this).parent().slideUp();
    e.preventDefault();
});

正如你在顶部看到的,这是一个html页面类型ajax,我发送一个名为“page”的帖子及其内容,例如“home”,然后服务器将返回home.html和我的内容home.html是html标签(div,a,p,article,h1,h2,h3,h4,section)和脚本声明(例如<script type="application/javascript" src="thispagejavascript.js"></script>)。

这些脚本对于请求的页面(例如home.html)是必需的,该页面仅运行到请求的页面(例如home.html),并且如果先声明则在当前文档中创建冲突,因此我必须仅在请求的页面时声明它已加载。在收到响应html数据(例如home html)之后,它将被放入id为“main_content_wrapper”的div。

问题:一切正常,除非ajax post请求正常工作,它冻结直到ajax post请求完成并且看起来很糟糕,因为加载动画也冻结了。在完成ajax post请求或页面本身之前,如何才能使加载动画不冻结?

非常感谢任何帮助,线索,想法,建议和建议。

0 个答案:

没有答案