详解Angularjs 如何自定义Img的ng-load 事件


Posted in Javascript onFebruary 15, 2017

在使用AngularJs的过程中,我们常常会用到一些ng-事件,如ng-click、ng-change等,这些事件都是AngularJs事先为我们定义好的。也有的情况下,我们会用到一些使用频率不高的dom事件,如img的onload(图片加载完成后触发),但AngularJs中默认没有这个事件,那么我们该如何自定义添加ng-load这个事件呢?

只需要给app对象添加如下指令即可:

myApp.directive('imageonload', function () {
  return {
    restrict: 'A', link: function (scope, element, attrs) {
      element.bind('load', function () { 
        //call the function that was passed 
        scope.$apply(attrs.imageonload);
      });
    }
  };
})

在Html中直接使用imageonload属性追加事件:

<img ng-src="{{src}}" imageonload="doThis()" />

最后,在controller中写对应的事件内容即可:

$scope.doThis=function(){
 //your own code
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
复制本贴标题和地址的js代码
Jul 01 Javascript
W3C Group的JavaScript1.8 新特性介绍
May 19 Javascript
Jsonp 跨域的原理以及Jquery的解决方案
May 18 Javascript
JavaScript内核之基本概念
Oct 21 Javascript
JS动态添加option和删除option(附实例代码)
Apr 01 Javascript
深入理解JavaScript中的箭头函数
Jul 28 Javascript
easyui Draggable组件实现拖动效果
Aug 19 Javascript
移动端界面的适配
Jan 11 Javascript
jQuery使用eraser.js插件实现擦除、刮刮卡效果的方法【附eraser.js下载】
Apr 28 jQuery
Javascript中prototype与__proto__的关系详解
Mar 11 Javascript
JS实现显示当前日期的实例代码
Jul 03 Javascript
Bootstrap FileInput实现图片上传功能
Jan 28 Javascript
js实现滑动到页面底部自动加载更多功能
Feb 15 #Javascript
JS 实现随机验证码功能
Feb 15 #Javascript
JS实现PC手机端和嵌入式滑动拼图验证码三种效果
Feb 15 #Javascript
javascript设计模式之中介者模式学习笔记
Feb 15 #Javascript
javascript中apply/call和bind的使用
Feb 15 #Javascript
JS实现图片放大缩小的方法
Feb 15 #Javascript
JavaScript中的编码和解码函数
Feb 15 #Javascript
You might like
thinkPHP5使用Rabc实现权限管理
2019/08/28 PHP
判断用户的在线状态 onbeforeunload事件
2011/03/05 Javascript
js动态创建表格,删除行列的小例子
2013/07/20 Javascript
JavaScript实现班级随机点名小应用需求的具体分析
2014/05/12 Javascript
jquery操作对象数组元素方法详解
2014/11/26 Javascript
浅析javascript 定时器
2014/12/23 Javascript
js中的事件捕捉模型与冒泡模型实例分析
2015/01/10 Javascript
BootStrap Fileinput的使用教程
2016/12/30 Javascript
angularjs使用directive实现分页组件的示例
2017/02/07 Javascript
node.js利用mongoose获取mongodb数据的格式化问题详解
2017/10/06 Javascript
详解使用vuex进行菜单管理
2017/12/21 Javascript
vue2.0 axios跨域并渲染的问题解决方法
2018/03/08 Javascript
vue实现弹框遮罩点击其他区域弹框关闭及v-if与v-show的区别介绍
2018/09/29 Javascript
详解angular2.x创建项目入门指令
2018/10/11 Javascript
优化Vue项目编译文件大小的方法步骤
2019/05/27 Javascript
解决layer.confirm选择完之后消息框不消失的问题
2019/09/16 Javascript
layui复选框限制选择个数的方法
2019/09/18 Javascript
Node.js API详解之 Error模块用法实例分析
2020/05/14 Javascript
使用Vant完成DatetimePicker 日期的选择器操作
2020/11/12 Javascript
Python自动化构建工具scons使用入门笔记
2015/03/10 Python
用Python设计一个经典小游戏
2017/05/15 Python
Python通过Pygame绘制移动的矩形实例代码
2018/01/03 Python
python利用smtplib实现QQ邮箱发送邮件
2020/05/20 Python
python利用小波分析进行特征提取的实例
2019/01/09 Python
Python计算指定日期是今年的第几天(三种方法)
2020/03/26 Python
Django实现将一个字典传到前端显示出来
2020/04/03 Python
美国性感内衣店:Yandy
2018/06/12 全球购物
美国亚马逊旗下男装网站:East Dane(支持中文)
2019/09/25 全球购物
Alexandre Birman美国官网:亚历山大·伯曼
2019/10/30 全球购物
一些高难度的SQL面试题
2016/11/29 面试题
Linux操作面试题
2012/05/16 面试题
公务员年度个人总结
2015/02/12 职场文书
优秀班干部主要事迹材料
2015/11/04 职场文书
nginx 反向代理之 proxy_pass的实现
2021/03/31 Servers
解决MySQL添加新用户-ERROR 1045 (28000)的问题
2022/03/03 MySQL
微软团队与 NASA 科学家和惠普企业(HPE)的工程师合作
2022/04/21 数码科技