位置: 编程技术 - 正文

详解javascript实现自定义事件(js类的实现)

编辑:rootadmin

推荐整理分享详解javascript实现自定义事件(js类的实现),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascriptjs,javascript+,javascript详细介绍,javascript+,js的实现原理,javascript详细介绍,javascript+,js实例教程,内容如对您有帮助,希望把文章链接给更多的朋友!

我们平时在操作dom时候经常会用到onclick,onmouseover等一系列浏览器特定行为的事件, 那么自定义事件,顾名思义,就是自己定义事件类型,自己定义事件处理函数,在合适的时候需要哪个事件类型,就去调用哪个处理程序

1.js所支持的浏览器默认事件

浏览器特定行为的事件,或者叫系统事件,js默认事件等等都行,大家知道我指的什么就行,下文我叫他js默认事件。 js默认事件的事件绑定,事件移出等一系列操作,相信大家都有用到过,如:

又或者

所有我就不做过多的研究,毕竟我们来讨论js自定义事件,这里给出一个我之前封装过的处理js默认事件的代码:

接下类我们不如正题,js自定义事件

2.对象直接量封装js自定义事件

根据上面的封装,我们可以这样构思

相信这样大家还是比较好理解的,然后又有一个问题大家可以想到,那就是,js默认事件,js可以一一对应,知道那个是那个,那么我们的自定义事件呢,这个一一对应的映射表只能我们自己去建立,然后我这样

详解javascript实现自定义事件(js类的实现)

我是这样构建这个映射关系的

这样每一个类型可以有多个处理函数,以便于我们以后扩充 接下来就是代码方面的实战的,编写具体的处理代码了…

相信大家对于这个思路已经很清楚了,我直接附上代码

这是一种调用运行的方法

这种方法有一个缺点,不能删除该处理事件,因为我们是用映射表做的,而且也不提倡,直接给映射表里面存这么多数据,有点多。

另一种方法,将处理事件提取出来(推荐)

也可以这样,传递更多的参数

总结:字面量这种方法,有点儿缺点,就是万一一不小心,把某个属性在handler函数里面,赋值null,这样会造成我们的的eventTarget 方法崩盘。看来原型应该是个好方法,更安全一点。

3.对象原型封装js自定义事件

由于前面思路基本都讲清楚了,这里我直接附上代码,大家可以研究下其中的利弊,或许你可以找到更好的方法解决Ta…

调用方法

原型这种方法,与直接量方法功能是一样的…

标签: js类的实现

本文链接地址:https://www.jiuchutong.com/biancheng/383739.html 转载请保留说明!

上一篇:JS拖拽组件学习使用(js实现拖拽元素改编顺序)

下一篇:JS获取CSS样式(style/getComputedStyle/currentStyle)(javascript获取css)

  • 个体工商户工商年报资金数额填啥
  • 我国当前税制结构的基本情况是怎样的
  • 劳务服务有什么
  • 在建工程应交税费会计分录
  • 非营利组织免税资格怎么认定
  • 手撕发票怎么领取需要什么证件
  • 财产行为税计税依据
  • 商场收取租户电费怎么处理税收?
  • 进口商品不提供发票合法吗
  • 营业利润为负数说明什么
  • 外购白酒用于个人销售吗
  • 商品溢余做销售的会计分录怎么写?
  • 货车挂靠企业需要交增值税吗?
  • 补缴的公积金可以抵扣个税吗
  • 收到销项负数发票怎么处理
  • 半成品牛排有营养吗
  • 税务局退的教育费附加怎么做账
  • 对于长期没发票的预付款怎么处理?
  • 法人转钱进公账可以吗
  • 个税手续费返还要交增值税吗
  • 进项税和销项税怎么算
  • 购买货车预付保险怎么算
  • 单位车辆车船税缴纳
  • 农民工劳动报酬权救济制度存在的问题
  • 对于目标文件系统文件过大无法删除
  • linux系统查询mac地址命令
  • 右键菜单中没有RAR压缩项怎么办
  • 苹果mac系统桌面空间不够
  • 私账转到公账怎么办
  • PHP If Else(elsefi) 语句
  • 委托外单位加工发出的材料分录
  • Win10 Build 19044.1379/19043.1379更新补丁KB5007253预览版推送
  • 汇算清缴中企业基础信息表
  • 政府收回土地使用权免征增值税的条件
  • 图书发行流程
  • 国家最高科技奖2018
  • vue中使用数组
  • vue中的provide/inject
  • vue.js前端
  • thinkphp如何连接数据库
  • 收到国税退回的发票
  • 旅游服务发票可以抵税吗
  • 帝国cms如何设置最新
  • 税务清单和发票清单是一样吗
  • 除了增值税发票还有什么票可以抵扣税
  • 织梦cms不更新了吗
  • 主营业务收入未收到钱
  • python中lambda用法
  • 增值税税控系统技术维护费怎么抵扣
  • 现金日记账怎么填
  • 小规模免征增值税的会计处理办法
  • 库存商品结转成本是什么意思
  • 只有销售才能使你成功的名言
  • 税收优惠应计入那个科目
  • 同城票据交换差额户的帐号怎么查对方的帐号
  • 成本费用总额占营业总收入的比率
  • 材料采购是什么会计要素
  • 工伤误工费标准是按照社平工资来算的吗
  • 处置固定资产应通过什么账户核算
  • 企业建账涉及哪些内容
  • 企业在计划内应生产的工业产品
  • win7开机提示由于启动计算机时出现页面文件
  • xp电脑如何在网页打开
  • ubuntu20.04 u盘
  • ubuntu软件安装
  • 破解ssh端口
  • win7全局搜索
  • linux进程运行的两种方式
  • linux中ps命令详解
  • jquery获取本地ip
  • istio源码解析
  • android yield
  • js实现物体移动
  • node. js教程
  • js 入门
  • ListView中EditText焦点问题
  • android camera setParameters failed 类问题分析总结
  • 北京同仁堂怎么挂专家号
  • 国地税账号密码
  • 代理记账协会成立时间
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设