位置: 编程技术 - 正文

详解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)

  • 房产税的房产原值是什么
  • 银行贴现属于贷款吗
  • 弃置费用的财务费用可以税前扣除吗
  • 金税盘当月不抵扣如何做分录
  • 债权投资产生的利息调整包括哪些内容
  • 个税系统异常怎么申报
  • 购进农产品取得专用发票
  • 永续盘存制的含义
  • 抵扣增值税怎么抵扣
  • 装修费可以一次性计入费用吗
  • 所有的固定资产都需要计提折旧吗
  • 报废 库存商品
  • 财务怎么查询微信转账单号真假
  • 通用机打发票税率在哪改
  • 国税局预缴税款在哪里看
  • 不动产60%和40%抵扣时间
  • 纳税人提供植物油的税率
  • 消费税的征收范围
  • 小微企业增值税收优惠政策
  • 发票上电话可以写手机号吗
  • 股东借款可以转为认缴出资
  • 开专票需要备注吗
  • 公司经营情况说明怎么写模板
  • 事业单位事业收入和经营收入要上缴财政
  • 小规模公司税控盘维护费会计分录
  • 小规模纳税人适用的增值税征收率
  • 当月已认证的可抵扣增值税
  • 车间低值易耗品有哪些
  • 上月的应付账款怎么记账
  • 出租房屋如何确认收入
  • 文件夹属性没有安全
  • 小规模纳税人的专票可以抵税吗
  • 出口退税会计分录例题
  • 小公司做帐
  • 出售使用过的车辆如何交印花税呢
  • laravel learnku
  • PHP:oci_password_change()的用法_Oracle函数
  • 按揭贷款到账时间
  • 资产负债表存货包括哪些科目
  • php教程 ftp 函数
  • PHP:spl_autoload_register()的用法_spl函数
  • 特许权使用费属于销售收入吗
  • 股权转让协议合同
  • 外币兑换业务的银行
  • 房产企业预售收入怎么做账务处理
  • 在建工程完工后不转固定资产
  • 矿产资源补偿费与采矿权价款区别
  • php bool
  • 年报中投资总额怎么填
  • php fgetcsv
  • php 错误和异常处理
  • 增值税进项税额计算公式
  • 餐饮业采购管理
  • 发票抬头能否开分支机构
  • 应交税费需要结转到本年利润吗
  • 母公司与子公司的区别
  • 一般纳税人简易计税方法适用情形
  • 固定成本和变动成本举例
  • 画完图不给钱怎么办
  • 收到费用发票没有付款的会计分录
  • 长期挂账其他应付款处理
  • 退货款现金流量如何做
  • 城市生活垃圾处理方式有哪几种
  • 废品损失如何处理
  • mac更换软件图标
  • win8怎么设置定时关机
  • win10预览版21277
  • iptables -z
  • linux怎么禁用用户
  • python操作微信自动发消息
  • shell脚本 教程
  • python嵌套列表生成
  • python模拟软件
  • unity更新需要重新下载吗
  • jQuery.uploadify文件上传组件实例讲解
  • 用nodejs实现三个类,动物基础类(有跑的函数,吃的函数)
  • Android屏幕适配分屏
  • 法国进囗红酒
  • 电子税务局都能完成哪些功能
  • 增值税与个人的区别
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设