js事件设计模式-含参数多事件的添加和移除
来源:互联网 发布:皮带轮怎样数控车编程 编辑:程序博客网 时间:2024/06/11 12:52
相对之前 更加完整实用了function creatfunction(obj,skill){if(!obj){obj=window;}var arr=[]; for(var i=2;i<arguments.length;i++){arr.push(arguments[i]);} return function(){obj[skill].apply(obj,arr);}}//给带参数的事件流程函数包一个无参数函数function Person(){}Person.prototype={show:function(){if(this.onshow){//如果存在数组 则进行下面的操作for(var x=0;x<this.onshow.length;x++){this.onshow[x]();//按for循环依次调用}}},addonshow:function(thing){//对自定义对象添加一个添加事件的方法 if(!this.onshow){//如果不存在这个数组 this.onshow=[];//则去建立一个空数组待用}this.onshow.push(thing);//将传入的事件函数从尾部添加到数组中},removeshow:function(things){//对自定义对象添加一个移除事件的方法if(this.onshow){//如果存在数组则进行下面的操作var index=this.onshow.indexOf(things);//找到事件 并把它在数组里的索引存在一个变量里this.onshow.splice(index,1);//把这个数组项删除(也就是移除了相应的事件)}} }function add(a,b){//事件流程函数一alert(a+b);}function ji(c,d){//事件流程函数二alert(c*d);}var man=new Person();var func1=creatfunction(null,'add',5,7);//进行包装赋值var func2=creatfunction(null,'ji',3,6);//进行包装赋值man.addonshow(func1);//12//作为参数传递引用(指针)man.addonshow(func2);//18//作为参数传递引用(指针)man.show();//12 18man.removeshow(func1);//去掉12man.show();//18//成功
阅读全文
0 0
- js事件设计模式-含参数多事件的添加和移除
- js跨浏览器添加移除事件
- JS绑定事件和移除事件的处理方法
- js 实现多事件绑定
- js外部样式和style属性的添加移除
- JS动态添加移除事件 和 获取Event (兼容IE和Firefox)
- 多事件绑定和加载:
- js 动态给元素添加、移除事件
- on()的多事件绑定
- on()的多事件绑定
- 原生js事件绑定和事件移除
- JS中的事件委托和移除事件处理程序
- 在运行时添加和移除事件处理程序
- jquery为a标签添加和移除onclick事件
- 添加和移除事件处理兼容各浏览器的封装(带详细注释)
- 事件的绑定和移除
- iOS通知的添加和移除
- jquery复选的添加和移除
- 2017 计蒜之道 初赛 第一场 A.阿里的新游戏
- 程序员面试金典——洪水
- .NET面试问题(2)
- 一天到晚只会抱怨的人必定是不成熟的人
- Win10环境下初始化MySQL
- js事件设计模式-含参数多事件的添加和移除
- 操作系统复习-1.3操作系统的运行环境
- openhab 在cubieboard上的安装
- 枚举enum
- elasticsearch 1.7.6 学习
- WebView更改错误显示页面之WebChromeClient
- JS多继承
- JIRA6.0.3破解授权详细步骤
- 操作系统复习-1.4 操作系统的体系结构