简单实现angularjs遮罩过渡加载

前言
很多情况下angularjs 加载页面时,会显示‘{{}}’ 等,带来页面美观性的问题。所以这个时候我们要用到遮罩,也就是页面加载时过渡.在做之前,可以先参考下angularjs 拦截器的API文档 点击查看

angularjs遮罩过渡加载实现步骤

开发的环境:
angularjs1.2.6 jquery1.9,主要是这几个js工具包
可以兼容ie8及以上系统 本人测试过无毛病

1. $http服务添加自定义拦截器

var apptag=angular.module('apptag', ['ui.router']).config(function($sceProvider){$sceProvider.enabled(false);
});
//添加http拦截器
apptag.config(["$httpProvider", function ($httpProvider) {   $httpProvider.interceptors.push('httpInterceptor');  
}]); 

2. 自定义拦截器

//loading  
apptag.factory('httpInterceptor', ["$rootScope", function ($rootScope) {  //设置加载时httpProvider请求和返回的加载状态var httpInterceptor = {request: function (config) { //start 开始加载$rootScope.loading = true;  return config;  },  response: function (response) { //end 结束加载 $rootScope.loading = false;  return response;  }  };  return httpInterceptor;  
}]); 

3.自定义angularjs遮罩组件

//该遮罩template是测试demo,如果觉得不好看,可以自己在网上找些好看的,修改template即可
apptag.directive('loading', function(){  return {  restrict: 'E',  transclude: true,  template: ''  +'',  link: function (scope, element, attr) {  scope.$watch('loading', function (val) {if (val){  document.getElementById("allDiv").style.display = "block";  }else{  document.getElementById("allDiv").style.display = 'none';  }  });  }  }  
});

4.见证结果的时刻

在需要加载的页面添加下面代码,位置放在body标签里

<loading>loading>

如斯:
这里写图片描述


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部