位置: 编程技术 - 正文

详解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种解决方案)

  • 中国注册税务师协会法律法规库
  • 营业成本包括哪些费用
  • 建筑业增值税税率2022
  • 合作社专项基金年底怎结转
  • 银行存款支付运费会计科目
  • 展位费怎么入账
  • 交易性金融资产的账务处理
  • 处置投资性房地产的损益怎么算
  • 购买的地下室管道多能退吗
  • 取得的管理部门证书
  • 劳务费税后算税前公式
  • 出口货物的销售额怎么算
  • 公司购买工装计入什么费用
  • 抵货款回来的产品叫什么
  • 退税后钱到哪里
  • 武汉房产税多少
  • 面条适用的增值税率是
  • 为什么餐费不能计入在差旅费
  • 小规模纳税人纳税申报时间
  • 电子发票怎么开具流程
  • 苹果macbookpro分辨率是多少
  • 行业收购溢价
  • 洗牙的利和弊
  • adv举例
  • php面向对象是什么意思
  • PHP:preg_last_error()的用法_PCRE正则函数
  • PHP:Memcached::prependByKey()的用法_Memcached类
  • win7纯净版系统官网
  • 大堡礁分布在澳大利亚的哪里
  • 国家公园好玩吗
  • 弃置费用的会计处理
  • 最优化模型的优点
  • php代码加密工具 xend
  • 表单建模
  • ajax调用php接口
  • android应用程序开发语言
  • PHP中strpos、strstr和stripos、stristr函数分析
  • 委托研发技术合同登记
  • echarts series name
  • vue中computed和watch
  • 企业所得税如何计算应纳税所得额
  • powercfg off
  • 合宪性审查程序
  • 利润分配的基本原则是( )
  • 总公司发票可以从分公司付款吗
  • MySQL数据库有什么特点
  • 在哪里验证增值税票
  • 农产品普通发票进项税抵扣
  • 企业所得税汇算清缴操作流程
  • sql服务器无法启动的解决
  • 筹资活动产生的现金流量净额减少说明什么
  • 确认应付职工薪酬怎么算
  • 建账之前的业务怎么处理
  • 非流动资产减少
  • 集团内部资产无偿划转是否缴纳印花税
  • 会计上有哪些
  • 开业前的装修费怎么做账
  • 企业应该设置几个安全管理人员
  • mysql的函数
  • jdbc连接sqlserver数据库查询数据画饼图
  • win10系统查看
  • centos用途
  • 怎么给文件夹设置密码保护
  • servers.mcs
  • 系统界面通知
  • linux root 密码忘了怎么办
  • win7系统IE浏览器一点就闪退
  • flask开发实例
  • unity读取文本文件
  • linux实现shell代码
  • js中倒计时器怎么实现
  • javascript运行速度
  • setBackgroundDrawable和setBackgroundColor的用法
  • 非营利组织税务处理
  • 契税含不含精装修
  • 提高增值税税率是什么意思
  • 我国为什么不推行安乐死
  • 乡土中国出版社不同内容一样吗
  • 预付建造固定资产的工程价款
  • 新余契税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设