mvc - 两页之间的白页

时间:2013-04-30 22:35:47

标签: javascript jquery jquery-mobile setinterval jquery-mobile-loader

我正在使用ASP.NET MVC4和jQuery mobile为iPad构建移动应用程序。

我有一个带有提交按钮的页面。在提交时,它会转到另一页。加载第二页之前有一段时间滞后,在此期间,用户会看到一个白页。

如何显示加载动画而不是白页?

我使用http://www.tkglaser.net/2012/02/waiting-spinner-for-long-running-form.html,但除了" white"之外,还会暂时显示加载动画。页面,我需要显示它#34;而不是"。

在提交表单之后但在第二页实际显示之前如何捕获事件的任何想法?

1 个答案:

答案 0 :(得分:0)

可以做到,我为你做了一个例子。它不是你想要的100%(这是一个相当复杂的例子,你需要点击列表视图)但你会明白这一点:http://jsfiddle.net/Gajotres/AzXdT/

基本上我在我的示例中所做的是在页面即将被隐藏时显示ajax加载器:

$(document).on('pagebeforehide', '[data-role="page"]',function(e,data){  
    var loader = setInterval(function(){
        $.mobile.loading('show');
        clearInterval(loader);
    },1); 
}); 

在加载另一个/同一页面时隐藏它:

$(document).on('pageshow', '[data-role="page"]',function(e,data){  
    var loader = setInterval(function(){
        $.mobile.loading('hide');
        clearInterval(loader);
    },1); 
});  

setInterval在这里是因为Web工具包浏览器在显示ajax加载器时出现问题。