AngularJs日常bug修复记录: 使用第三方插件按需加载(oclazyload简单使用)
2017-06-16 11:41
691 查看
新研发的项目中使用到了jqurey 的custom.js来实现一个下拉菜单的效果,原本插件是直接再页面上引用的,
如下:
但是由于插件引用的时候,需要使用它的页面dom树还未生成,插件找不到它要使用的对象,使得插件失效。所以需要进行一个延迟加载,等待dom树生成再加载插件。
这时候需要引用一款angular 延迟加载的插件:oclazyload,它的使用非常简单,具体可以参见官网。
官网地址:https://oclazyload.readme.io/docs
页面引入oclazyload插件,并将它添加到angular的依赖中:
在需要引用custom.js插件的页面的指令中使用oclazyload加载custom.js,如下:
这样页面就不需要在通过script标签来引入custom.js,就能实现在页面加载完成后实现一个下拉菜单的效果。
如下:
<script src="/vendor/custom/js/custom.js" charset="utf-8"></script>
但是由于插件引用的时候,需要使用它的页面dom树还未生成,插件找不到它要使用的对象,使得插件失效。所以需要进行一个延迟加载,等待dom树生成再加载插件。
这时候需要引用一款angular 延迟加载的插件:oclazyload,它的使用非常简单,具体可以参见官网。
官网地址:https://oclazyload.readme.io/docs
页面引入oclazyload插件,并将它添加到angular的依赖中:
angular.module('app', ['ui.router','oc.lazyLoad']);
在需要引用custom.js插件的页面的指令中使用oclazyload加载custom.js,如下:
angular.module('app').directive('appMenu', ['$ocLazyLoad',function($ocLazyLoad){ return { restrict: 'A', replace: true, templateUrl: 'view/template/menu.html', link:function(){ $ocLazyLoad.load('/vendor/custom/js/custom.js'); } }; }]);
这样页面就不需要在通过script标签来引入custom.js,就能实现在页面加载完成后实现一个下拉菜单的效果。
相关文章推荐
- Vue图片懒加载插件 - vue lazyload的简单使用
- VUE图片懒加载-vue lazyload插件的简单使用
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- 基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
- jQuery懒加载插件 – jquery.lazyload.js简单调用
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- jQuery图片延迟加载插件jQuery.lazyload插件使用说明
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- Jquery图片延迟加载插件jquery.lazyload.js的使用方法
- 基于jquery的lazy loader插件实现图片的延迟加载[简单使用]
- 缓冲加载图片的jQuery插件lazyload.js 使用方法详解
- JQuery缓冲加载图片插件lazyload.js的使用方法
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- 缓冲加载图片的 jQuery 插件 lazyload.js 使用方法详解
- JQuery缓冲加载图片插件lazyload.js的使用方法
- 按需加载图片的 jQuery 插件 lazyload.js 使用方法详解
- JQuery缓冲加载图片插件lazyload.js的使用方法
- JQuery缓冲加载图片插件lazyload.js的使用方法