位置: 编程技术 - 正文

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

  • 税率变化递延所得税资产怎么计算
  • 房地产税收有哪些
  • 预收账款确认收入
  • 个税走什么科目
  • 劳务发票打款用途写什么
  • 批发商税率
  • 员工借款会计科目
  • 盈余公积的用途是什么
  • 怎么根据进销存做账
  • 外汇银行会计特殊处理方法如何理解?
  • 股权转让如何避免缴纳个税
  • 税控系统技术维护费
  • 凭证出现错误如何解决
  • 税务申报系统叫什么
  • 一般纳税人汇算清缴操作流程
  • 小型微利企业的
  • win7怎么输入命令
  • 普通发票多久之后还可以红冲
  • 购买加油卡怎么充值
  • 紧急重新启动
  • 服务成本怎么处理
  • PHP CURL CURLOPT参数说明(curl_setopt)
  • 去年的发票忘记入账怎么处理
  • 递延性负债
  • 购买股票的会计分录
  • 收到公司投资属于什么会计科目
  • 折扣额在备注栏
  • 潜水时看到的鱼
  • vue定位城市
  • php炫酷代码
  • 工会经费计入什么费用明细科目
  • php用正则匹配网页的logo
  • php array_walk_recursive 使用自定的函数处理数组中的每一个元素
  • 住宿专票可以抵增值税吗
  • 企业贷款利息是多少
  • pyqt5 pycharm
  • 人力资源公司代办
  • java 代码简洁
  • 销售佣金的税务比例一般是多少啊
  • 预付账款可以抵扣增值税么
  • mysql 重复记录查询
  • 一般纳税人无形资产税率
  • 房地产企业增值税预征率
  • 利息收入管理办法
  • 付出对价的公允
  • 开票金额为什么是负数
  • 国有控股企业和国有参股企业的区别
  • 捐赠支出税前扣除比例
  • 委托加工物资核算
  • 外购材料用于建筑工程会计分录
  • 期初数据在哪里找
  • 研发支出的定义
  • 进项发票和销项发票怎么抵扣
  • 银行汇票哪个科目
  • 公务机票保险费能报销吗
  • 固定资产为什么提折旧,有何实际意义
  • 设置出纳权限的操作步骤
  • 企业建账流程图
  • 错误的英文
  • xp查看系统
  • xp系统运行怎么打开
  • win2003服务器管理
  • win2000系统安装教程
  • linux的grep命令详解
  • windows1021h2更新
  • win10edge浏览器怎么设置兼容模式
  • linux命令grep -rl
  • windows7打开网络连接
  • unity怎么念
  • java程序员准备骑驴找马了,需要怎么准备
  • jquery插件库怎么导入
  • Node.js中的全局变量有哪些
  • vue_api_server
  • 地方税务局办税流程
  • 沈阳市税务局全称
  • 车辆保险增值税税率是多少
  • 监察室主任岗位职责
  • 陕西省国税务局大企业处长邓谷祥简历
  • 房子有注册公司可以卖吗
  • 太原公安分局有几个
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设