位置: 编程技术 - 正文

javascript事件模型介绍

编辑:rootadmin

推荐整理分享javascript事件模型介绍,希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:,内容如对您有帮助,希望把文章链接给更多的朋友!

一、原始事件模型

其事件类型:分为"输入事件(如onclicki)"和"语义事件(如onsubmit)"

事件程序的注册可以以下几种方式:

1、JS代码作为HTML性质值

2、事件处理程序作为JS属性

附注:文档中的每个HTML元素在文档树中都有一个相应的JS对象,这个JS对象的属性对应于那个HTML元素的性质,无论作为HTML性质的JS代码还是作为JS属性的时间处理程序,其本身的属性都是函数"function".

第一种赋值方式:

第二种赋值方式:

javascript事件模型介绍

作为JS属性的事件处理程序可以用JS属性显式调用

事件处理程序可以返回fale来阻止浏览器执行事件的默认动作,常用的如对onsubmit的操作。例外是对超链接mouseover的window.status显示事件的阻挡,是返回true.例如:

二、DOM2事件模型

这个模型参考了IE的气泡模型而制定的,它是由w3c制定的规范.在原始模型中事件一旦发生就直接调用事件句柄,没有其它的事件传播过程.而在DOM2模型中事件有一个特殊的传播过程,分为三个阶段:

(1)capturing phase:事件被从document一直向下传播到目标元素,在这过程中如果有哪个祖先元素对该事件感兴趣可以注册自己的处理函数.

(2)target phase:事件到达目标元素,执行目标元素的事件处理函数.

(3)bubbling phase:事件从目标元素上升一直到达document,虽然所有的事件类型都会经历captruing phase阶段但是只有部分事件会经历bubbling phase阶段,例如submit事件就不会被上浮.在整个的事件传播过程中可以调用event.stopPropagation()来停止事件的传播,调用preventDefault()来阻止浏览器的默认行为.

三、IE模型

IE模型也提供了一个event对象封装了事件的详细信息,但是IE不把该对象传入事件处理函数,由于在任意时刻只会存在一个事件,所以IE把它作为全局对象window的一个属性,IE中的事件传播模式对应于DOM2的第二和第三阶段,首先执目标元素的处理函数,然后向上传播到达document,ie中只能能捕捉鼠标事件,而DOM2中可以捕捉所有的事件,IE中注册和删除事件处理函数的方法也不同于DOM2.

事件处理函数的注册和删除是通过元素的attachEvent("eventType","handler") and detachEvent("eventType","handler" ),与dom2不同的是eventType有on前缀

特点:1、传播过程只起泡,不捕捉。起泡中断方法:window.ecent.cancelBubble=true;2、Event对象不是事件处理程序的函数参数,而是window的全局变量。3、事件注册函数:attachEvent()和反注册:detachEvent().

四、Netscape4事件模型

由于Netscape好像已经完全停止开发,所以就不详述了,简单的说:就是只捕捉不起泡。

标签: javascript事件模型介绍

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

上一篇:javascript基本语法(javascript基础)

下一篇:页面get请求 中文参数方法乱码问题的快速解决方法(get请求的url)

  • 金税盘交钱
  • 预付账款长期挂账风险
  • 金融商品转让为什么不能扣除相关税费
  • 生产成本里面的工资
  • 报税时提示缺少相关组件怎么解决
  • 融单是什么意思
  • 成立企业的步骤
  • 装卸费和保险费是价外费用吗
  • 报销发票会计怎么处理
  • 不含税的营业收入是什么意思
  • 收取境外服务费收入会计分录
  • 多认证的增值税怎么处理
  • 小规模纳税人可以开9%专票吗
  • 所得税年报调增调减
  • 预缴企业所得税分录
  • 不锈钢材料开票
  • 投标财务状况报告怎么提供
  • 同城提入业务包括
  • windows11家庭版本地策略组
  • 电脑开机屏幕黑屏无信号
  • 合同终止后发生的效果包括
  • win7电脑怎么样
  • 有销项无进项税务局会怎么罚
  • 本期应计提坏账损失700元调整前坏账准备贷方余额500元
  • 销售点的增值税计算公式
  • 魅族路由器怎么样
  • php如何删除数组元素
  • 边角料是否计入生产成本
  • 被黑客攻击
  • php二维数组foreach
  • php运算符@符号
  • 营业税金及附加会计分录
  • 合作社计提工资
  • 车辆保险会计怎么做分录
  • 承包安装工程活怎么接
  • 营业外支出科目代码
  • 跨年发票可以作为税前扣除的时限
  • 增值税发票认证在哪里
  • 单位上社保需要个人提供什么资料
  • 发票网上申领需要多长时间
  • sqlserver2008数据库备份和恢复步骤
  • 安全生产费如何计量
  • 车间购买劳保费用会计分录
  • 企业资金占用费利率
  • 委托加工以受托方核定的数量为计税依据
  • 事业单位如何调档案
  • 社保补差什么流程
  • 新会计准则开办时间规定
  • 企业的融资租赁
  • 自然人系统如何恢复数据
  • 进项税额抵扣不完要做分录吗
  • 物业公司代收水费账务处理
  • 公司房租收据可以入账吗
  • 商业企业批发商是什么
  • 怎样把有余额的钱取出来
  • 实例讲解液化滤镜瘦身
  • 隐藏在大山深处的罪恶
  • mysql如何实现主从复制的具体流程
  • win10系统怎么修改用户名称
  • windows2003 64位注册码 序列号 激活码
  • mysql8安装步骤
  • win7系统硬盘分区类型
  • windows系统中巧用系统中的文件查看有谁用过我们的电脑 查看方法介绍
  • windows8如何设置电脑锁屏时间
  • win1020h2版本怎么更新
  • windows7磁盘清理命令
  • Cocos2dx3.2 Crazy Tetris 绘制不规则方块 遮罩(ClippingNode的使用)
  • Node.js中的construct
  • js数组随机抽奖
  • css模糊滤镜
  • css placement
  • node和javascript
  • unity3d 画线
  • javascript零基础入门
  • unity3d物体旋转
  • 安卓数据网络
  • javascript电商项目
  • jquery click重复执行
  • 国家电子税务总局重庆电子税务局
  • 出口货物开票税率是多少
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设