如何在oldview中显示微调器,而不是在骨干中显示空白页

时间:2013-11-12 12:11:19

标签: jquery jquery-mobile backbone.js requirejs

在我的应用程序中,我在转换期间得到一个中间空白页。并且ajax微调器显示在该页面中。

这就是我在main.js中包含微调器的方法

$(document).ajaxSend(function() {
    $.mobile.loading( 'show');
});
$(document).ajaxComplete(function() {
    $.mobile.loading( 'hide');
});

在路由器中我删除旧视图并加载新视图以摆脱僵尸视图问题  oldview.remove()和oldview.unbind()。

我的问题是如何在旧视图上方显示ajax微调器,而不是在空白页面上显示它。

感谢任何帮助。

1 个答案:

答案 0 :(得分:0)

更新

抱歉,我有点偏离主题。我假设你已经有一个jQuery插件,以显示/隐藏任何DOM元素之上的加载覆盖..

因此,为了实现我的解决方案,你需要一个。

注意:据我所知,您无法在特定DOM元素上应用$.mobile.loading()

您可以使用类似jquery-loadmask之类的内容,然后重新设置CSS以匹配$.mobile.loading

或者我个人使用github上发现的simple jQuery function来实现相同的行为(可能更轻)。

原始

你试过了吗?

oldview.$el.loading('show');

同样ajaxSendglobal Ajax event而且更多,不与任何DOM元素相关联,只与document.body元素相关联,除了处理{{{}之外别无其他选择。 1}}在你的视图中:

show/hide

只需一个解决方案。