位置: 编程技术 - 正文

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)

  • 不动产租赁服务的税率是多少
  • 其他应付款太多怎么做账务处理
  • 金蝶以前年度损益调整属于哪类科目
  • 法人变更注册资金降低以前的债务怎么处理
  • 房产税和土地使用税会计分录
  • 营改增试点纳税人提供有形动产租赁服务,税率为
  • 发票隔月报送可以么?
  • 销售边角料计入什么科目
  • 长投损失了如何处理
  • 出口没做免税申报怎样补税?
  • 母公司与子公司之间的资金往来
  • 食堂收取单位餐费需要开发票吗?
  • 接受捐赠的要交税吗
  • 公司卖出汽车怎样做账
  • 上海房产税如何退税
  • 小规模企业如何
  • 其他收益是否缴纳个税
  • 固定基金会计分录怎么处理
  • 发票税率开错怎么处理?
  • 税控盘不存在怎么回事
  • 增值税普通发票几个点
  • 两年前少缴的税款是否应补缴?
  • 外贸企业出口货物会计账务处理
  • 企业收到现金支票
  • 收到股利的现金会计分录
  • 销售单怎么设置打几行
  • 跨年的工会经费怎么做分录
  • 污水处理费该谁交
  • 资产负债表中的固定资产怎么算
  • mac怎么airdrop给ipad
  • php中mysqli怎么连接数据库
  • 电脑bios错误怎么办
  • PHP:Memcached::setOption()的用法_Memcached类
  • 进项发票认证操作
  • php入门课程
  • 云杉树下面长什么蘑菇
  • 汽车维修收费标准及费用计算方法
  • 公允价值变动损益借贷方向增减
  • js监听事件和处理事件
  • php过滤html
  • swatch of
  • 未开票收入为负数是什么意思
  • CSS SandBox
  • 小企业其他应收款坏账处理
  • 物价变动的影响因素
  • 进口商品销售的会计分录
  • 发票跨月发现开错该怎么办?
  • python生成器的应用场景
  • 织梦自定义模型调用
  • 什么叫境外所得
  • 企业资产评估后多久上市
  • Mysql中 show table status 获取表信息的方法
  • 三免三减半税收政策中的递延所得税
  • 保税仓发货的商品退货要承担税吗
  • 人工费用计入
  • 出口退税指的是什么意思
  • 无法收回的款项
  • 软件开发并销售产品
  • 差额征税问题
  • 应收账款的会计要素
  • 微信扣款手续费
  • 发票本月没有认证能用吗
  • 支付股东借款现金流量表怎么填
  • 长期挂账的往来款税务处理
  • 工程项目分包需要招标吗
  • 深入浅出意思
  • Select count(*)、Count(1)和Count(列)的区别及执行方式
  • windows10的xbox如何录制视频
  • windows10x预览版
  • centos防火墙策略配置
  • win10系统怎么一键返回桌面
  • win7旗舰版系统激活密钥
  • Windows8怎么打开任务管理器
  • 3dsMax插件开发环境配置
  • jqueryui easyui
  • 查税务在哪里查
  • 增值税和消费税申报对比不符怎么处理
  • 天津海泰南路属于哪个区
  • 同比减少怎么计算出来
  • 地税服务费算什么科目
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设