位置: 编程技术 - 正文

详解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
  • 个人所得税如何计算
  • 小规模纳税人工程款税率是多少
  • 小规模纳税人可以开13%的发票吗
  • 已付款未收到发票账务处理
  • 防暑降温用品计算方法
  • 以库存现金付讫
  • 丢失支票补救措施
  • 分公司借款给总公司
  • 收到科技创新奖金怎么做分录
  • 提前报废资产损失税前扣除
  • 跨区域施工要交什么税
  • 国家认定的高新技术企业是什么意思
  • 承兑汇票章不清晰 情况说明
  • 购入的商品用于捐赠怎么做分录
  • 最新土地增值税实施细则
  • 银行支票怎么用
  • 原材料结转生产成本是什么意思
  • 刷单的费用计入劳务费吗
  • 金蝶如何结转折旧费用的操作步骤
  • 预提返利的会计处理
  • 多结转成本的会计分录
  • 财政拨款结转的借贷方向
  • 腾讯电脑管家流量监控不显示
  • 无法删除文件提示怎么办
  • 如何解决浏览器禁止访问
  • 存出投资款是什么凭证
  • 个人所得税计算方法及抵扣方法
  • 会计科目对应的会计要素
  • 如何取消置顶聊天折叠
  • mac设置邮件
  • mac怎么创建icloud
  • 对公转账需要填写开户行吗
  • PHP:pg_fetch_array()的用法_PostgreSQL函数
  • 融资租赁综合利息计算
  • 成本核算流程会议记录
  • php异常处理和错误处理
  • phpajax技术
  • php连接数据库mysql做登录页
  • yolo v5详解
  • 毕业论文笔记怎么写
  • 残保金申报操作流程
  • 保障金是低保吗
  • 所得税费用当月计提吗
  • 变更法人需要什么流程
  • 织梦cms要钱吗
  • 简易征收的进项税怎么处理
  • python如何对齐输出
  • 暂估入账的原材料有成本差异吗
  • 六税两费减半征收政策
  • 三项经费要包括哪三项
  • db2导出数据到excel
  • 未开票收入本月要计提增值税吗
  • 其他应收款收不回来怎么写情况说明
  • 银行转账费用多少钱
  • 预收账款退款的会计处理
  • 个人新冠肺炎确诊,要和单位领导说吗
  • 公司宿舍楼出租让我当甲方违法吗
  • 主营业务毛利率和毛利率
  • windows vista安装光盘进入dos
  • linux解析命令
  • 红帽子一个月能挣多少钱
  • freebsd怎么样
  • Windows Server 2012实用技巧集锦
  • Win10 RS1 14267 SDK版本发布下载
  • linux系统的安装和常用命令
  • Android OpenGL ES 入门
  • javascriptwhile
  • 原生js有用吗
  • jquery理解
  • Android---59---Toast的使用
  • javascript 对象
  • jquery插件是干什么的
  • 广西税务局增值税发票查询平台
  • 办理授权税务事项有哪些
  • 北京共有产权房房源信息
  • 国家税务总局上海税务局(个人)
  • 小微企业所得税5%优惠政策
  • 环保职责及管理范围
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设