位置: 编程技术 - 正文

详解JavaScript中的事件流和事件处理程序(javascript的用法)

编辑:rootadmin

推荐整理分享详解JavaScript中的事件流和事件处理程序(javascript的用法),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:javascriptz,javascript含义,javascript definitive guide,javascript的,javascriptcsdn,javascript的用法,javascript的用法,javascriptz,内容如对您有帮助,希望把文章链接给更多的朋友!

事件流:分两种,IE的是 事件冒泡流 ,事件开始时从最具体的元素接收,逐级向上传播到较为不具体的节点(Element -> Document)。与之相反的是 Netscape 的 事件捕获流 。

DOM2级事件规定事件流包括三个阶段:事件捕获阶段、处于目标阶段和事件冒泡阶段。

大多数情况下都是将事件处理程序添加到事件流的冒泡阶段。一个 EventUtil 的栗子:

下面我们详细来看:

DOM0级事件处理程序通过Javascript指定事件处理程序的传统方式,就是将一个函数赋值给一个事件处理程序属性。每个元素都有自己的事件处理程序属性,这些属性通常全部小写,例如onclick。将这种属性的值设置为一个函数,就可以指定事件处理程序。

优点:1.简单2.具有跨浏览器的优势缺点:在代码运行之前不会指定事件处理程序,因此这些代码在页面中位于按钮后面,就有可能在一段时间怎么点击都没反应,用户体验变差。

详解JavaScript中的事件流和事件处理程序(javascript的用法)

DOM2级事件处理程序定义了两个方法,用于处理指定和删除事件处理程序的操作:addEventListener()和removeEventListener()。三个参数,1.要处理的事件名。2.作为事件处理程序的函数3.一个布尔值。最后这个布尔值为true,表示在捕获阶段调用事件处理程序,false表示在冒泡阶段调用事件处理程序。

这两个事件处理程序会按照添加他们的顺序触发。大多数情况,都是将事件处理程序添加到事件流的冒泡阶段,这样可以最大限度的兼容各种版本的浏览器。

优点: 一个元素可以添加多个事件处理程序缺点: IE8及以下浏览器不支持DOM2级事件处理程序。(包括IE8)

IE事件处理程序定义了两个方法,与上类似:attachEvent(),detachEvent()。这两个方法接收相同的两个参数:事件处理程序名称和事件处理程序函数。由于IE8以及更早版本的浏览器只支持事件冒泡,所以通过detachEvent()添加的事件处理程序会被添加到冒泡阶段。

点击按钮,这两个事件处理程序的触发顺序与上述刚好相反。不是按照添加事件处理程序的顺序触发,刚好相反。

优点:一个元素可以添加多个事件处理程序缺点:只支持IE。

跨浏览器的事件处理程序

eg:

JavaScript中的跨浏览器事件操作的基本方法整理 绑定事件EU.addHandler=function(element,type,handler){//DOM2级事件处理,IE9也支持if(element.addEventListener){element.addEventListener(type,handler,false);}elseif(element.attachEvent){//ty

JavaScript中用let语句声明作用域的用法讲解 语法letvariable1=value1参数variable1要声明的变量的名称。value1赋给变量的初始值。备注使用let语句声明一个变量,该变量的范围限于声明它的块中。可以在

总结JavaScript设计模式编程中的享元模式使用 享元模式不同于一般的设计模式,它主要用来优化程序的性能,它最适合解决大量类似的对象而产生的性能问题。享元模式通过分析应用程序的对象,

标签: javascript的用法

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

上一篇:JavaScript中的Object对象学习教程(JavaScript中的方法名不区分大小写)

下一篇:JavaScript中的跨浏览器事件操作的基本方法整理(js跨域8种解决方案)

  • 什么是所得税税负
  • 新企业会计准则2021
  • 会计账册丢失什么后果
  • 含税金额和开票金额
  • 培训费用属于
  • 固定资产折旧计算公式
  • 端午节福利计入什么科目
  • 连锁店每个店都要独立核算吗
  • 打印复印费的明细怎么开?
  • 建筑行业简易计税账务处理
  • 2018年所得税率
  • 闲置资金怎么说?
  • 行政单位基建账统一核算
  • 核定征收的个人所得税怎么申报
  • 营改增的增值税税率
  • 没收入就没附加税么?
  • 营改增来了!会计人应如何自处
  • 小规模纳税人优惠政策类型怎么选
  • 理财产品取得收益要交税吗
  • 产品研发的规则
  • 公司购酒的发票可以开多少
  • 材料验收入库的会计科目
  • 现金流量表怎么做
  • 如何绕开压缩包密码
  • 发放工资不计提可以吗
  • php空间怎么用
  • 企业向股东发放现金股利会引起
  • json格式字符串提取值
  • 纳税人转让旧房及建筑物
  • 蜜蜂皇vs
  • php 自动化测试
  • 房产税为什么会退税
  • php输出语法
  • vuex状态机
  • php如何实现重载
  • 学费入账处理
  • 置顶文章
  • 企业直接费
  • 百旺金赋怎么开红字发票
  • 存货在报表里是如何体现的
  • 小规模免税收入是多少
  • 内含报酬率的计算公式Npv
  • 发票入账是什么意思
  • 年化收益率和年利率区别
  • 营改增阶段
  • 工作失误扣工资的规定是什么
  • 在建工程转固定资产凭证附件
  • 记账凭证审核的内容
  • 股东如何收回投资款
  • 银行取现怎么预约
  • 企业被收购的账务处理
  • 所得税费用如何计提
  • mysqld mysql
  • mysql id in
  • cmd命令行操作
  • 获取windows的最新信息
  • thinkpad8装系统
  • win8怎么把c盘恢复出厂设置
  • centos mail命令
  • WIN7系统怎么安装 注音输入法
  • pap是什么文件
  • win7访问共享文件夹没有权限访问
  • cocoscreator lua
  • .json()
  • javascript日期加减
  • 批处理遍历文件输出文件路径
  • js array insert
  • django 自定义权限管理
  • Linux 中的通配符详解及实例
  • 关于numpy中loadtxt函数的说法
  • js实现的简单鼠标代码
  • jquery根据name
  • python怎么自定义函数
  • 北京市地方税务局2015第10号文件
  • 人工智能在税务领域应用中的风险与规制
  • 小规模一季度多少免增值税
  • 哈尔滨银行网上银行怎么开通
  • 全国砂石供应紧缺
  • 纳税申报期限和税款缴纳期限一样吗
  • 怎么注册山东省电子税务局
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设