Javascript Angular.js显示加载动画,直到DOM就绪
我正在用Angular.js构建一个Phonegap应用程序。在索引页面中,您可以单击“显示用户列表”按钮,该按钮可将您重定向到在Javascript Angular.js显示加载动画,直到DOM就绪,javascript,angularjs,cordova,angularjs-ng-repeat,Javascript,Angularjs,Cordova,Angularjs Ng Repeat,我正在用Angular.js构建一个Phonegap应用程序。在索引页面中,您可以单击“显示用户列表”按钮,该按钮可将您重定向到在ng视图中加载模板的页面。模板包含从$rootScope.users加载并使用ng repeat呈现的用户列表。问题是有很多用户(目前大约120个),因此页面呈现速度很慢,尤其是在Phonegap中。因此,当我单击“显示用户列表”按钮时,地址栏中的URL会立即更改,但是ng view中的内容只会在几秒钟后更改。因此,我希望在渲染视图之前显示加载动画,以便用户知道页面正
ng视图中加载模板的页面。模板包含从$rootScope.users
加载并使用ng repeat
呈现的用户列表。问题是有很多用户(目前大约120个),因此页面呈现速度很慢,尤其是在Phonegap中。因此,当我单击“显示用户列表”按钮时,地址栏中的URL会立即更改,但是ng view
中的内容只会在几秒钟后更改。因此,我希望在渲染视图之前显示加载动画,以便用户知道页面正在加载
我用ng show=“load.visible”
创建了一个加载动画-一个div。在按钮上,我设置了ng click=“load.visible=true”
,在“用户”页面的控制器中,我写道:
angular.element(document).ready(function(){
$scope.loading.visible = false;
})
第一次按下按钮时效果很好。动画立即显示,并在显示用户列表时消失。但是当我返回到索引页面,再次按下“显示用户列表”按钮时,加载的动画直到用户列表被渲染后才显示,然后显示大约100毫秒并消失
我是Angular的新手,所以我不确定它是如何工作的,有人能告诉我出了什么问题吗?有没有更好的解决方案来处理这个问题?谢谢请尝试在页面控制器中使用以下命令
$scope.$on('$viewContentLoaded', function ()
{
$scope.loading.visible = false;
});
而不是
angular.element(document).ready(function(){});
也可以在angular文档中查找ng斗篷
希望这有帮助
谢谢。使用自定义CSS加载微调器/启动屏幕。这很可能不起作用,因为在DOM交付给用户时,JS还没有完全加载到页面上?我已经有这个指令了