位置: 编程技术 - 正文

javascript浏览器兼容教程之事件处理(JavaScript浏览器扩展)

编辑:rootadmin

1. window.event

【分析说明】先看一段代码

  以上代码在IE运行的结果是[object],而在Firefox无法运行。

  因为在IE中event作为window对象的一个属性可以直接使用,但是在Firefox中却使用了W3C的模型,它是通过传参的方法来传播事件的,也就是说你需要为你的函数提供一个事件响应的接口。

【兼容处理】添加对event判断,根据浏览器的不同来得到正确的event:

2. 键盘值的取得

【分析说明】IE和Firefox获取键盘值的方法不同,可以理解,Firefox下的event.which与IE下的event.keyCode相当。关于彼此不同,可参考《键盘事件中keyCode、which和charCode 的兼容性测试》

【兼容处理】复制代码

3. 事件源的获取

【分析说明】在使用事件委托的时候,通过事件源获取来判断事件到底来自哪个元素,但是,在IE下,event对象有srcElement属性,但是没有target属性;Firefox下,even对象有target属性,但是没有srcElement属性。

【兼容处理】

4. 事件监听

【分析说明】在事件监听处理方面,IE提供了attachEvent和detachEvent两个接口,而Firefox提供的是addEventListener和removeEventListener。

【兼容处理】最简单的兼容性处理就是封装这两套接口:

  需要特别注意,Firefox下,事件处理函数中的this指向被监听元素本身,而在IE下则不然,可使用回调函数call,让当前上下文指向监听的元素。

5. 鼠标位置

【分析说明】IE下,even对象有x,y属性,但是没有pageX,pageY属性;Firefox下,even对象有pageX,pageY属性,但是没有x,y属性。

【兼容处理】使用mX(mX = event.x ? event.x : event.pageX;)来代替IE下的event.x或者Firefox下的event.pageX。复杂点还要考虑绝对位置。

推荐整理分享javascript浏览器兼容教程之事件处理(JavaScript浏览器扩展),希望有所帮助,仅作参考,欢迎阅读内容。

javascript浏览器兼容教程之事件处理(JavaScript浏览器扩展)

文章相关热门搜索词:javascript浏览器下载,javascript浏览器怎么打开,javascript浏览器怎么打开,JavaScript浏览器打开,JavaScript浏览器扩展,JavaScript浏览器打开,JavaScript浏览器打开,JavaScript浏览器打开,内容如对您有帮助,希望把文章链接给更多的朋友!

深入理解javascript中的立即执行函数(function(){…})() javascript和其他编程语言相比比较随意,所以javascript代码中充满各种奇葩的写法,有时雾里看花,当然,能理解各型各色的写法也是对javascript语言特性

javascript setinterval 的正确语法如何书写 前几天我用setinterval写了一个小程序,这个setinterval是用来干什么的我就不解释了。写的方法在其它的浏览器里都能用,后来测试组的同事拿去一测就出

js常用数组操作方法简明总结 //javascript中的数组分割varcolors=["red","green","blue"];//alert(colors.toString());alert(colors.join("|"));//返回结果是red|green|bluevarcolors=["red","green","blue",null];alert(colors.join

标签: JavaScript浏览器扩展

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

上一篇:ECMAScript6的新特性箭头函数(Arrow Function)详细介绍(ecmascript6入门)

下一篇:深入理解javascript中的立即执行函数(function(){…})()(深入理解新发展理念,推进供给侧结构性改革 心得体会)

  • 增值税开票软件客服电话
  • 材料抵扣货款怎么写简单协议范本
  • 以前年度多缴纳的企业所得税退还
  • 收付转记账凭证图片
  • 一次性年金怎么计算
  • 小规模开专票附加税要计提吗
  • 借应交税费销项税额贷未交增值税
  • 工会支出发票抬头是企业名称可以吗
  • 个人独资企业经营所得税税率表2023
  • 存货清查的结果
  • 房地产开发企业土地增值税清算
  • 高新企业研发费用归集
  • 多收账款怎么账务处理
  • 免税发票还可以开吗
  • 公司必须购买税控设备吗
  • 建筑公司异地预缴增值税
  • 不在开票机上怎么查发票
  • 什么是现金购房
  • 累积带薪缺勤金额怎么算
  • linux c gui
  • 电脑bios找不到vt
  • manjaro linux安装教程
  • 进程core
  • 挂证不付工资只代缴社保账务处理
  • 担保损失会计分录
  • 员工报销电话费缴纳个税
  • 商业零售企业存货非正常损失
  • 写字楼出售需要交多少税
  • thinkphp if
  • 如何防止sql注入 java
  • phpapi接口调用
  • 加油站的卷式发票能抵扣吗
  • 应交税金科目应不应该有余额
  • 旅游景点的门票能做费用吗
  • 固定资产的核算内容包括
  • 股东投资款超过实收资本怎么处理
  • 外企研发中心
  • 普通发票和增值税发票的税率
  • 出口货物赠品如何申报
  • sql server 2008简介
  • 固定资产未入账的定性依据
  • 当月开票可以当月勾选吗
  • 跨年租金如何确认收入
  • 单位结算卡和对公账户号码不一样
  • 会计差错更正的会计处理方法
  • 计提生产产品的机器设备的折旧应借记制造费用科目
  • 投资收益算在营业利润里面吗
  • 从农民个人手里取出钱
  • 营业外支出包括哪些?
  • 待处理财产损益的账务处理
  • 小公司用什么财务软件做账
  • 会计账簿的设计要与会计报表相衔接 ()X
  • linux下安装mysql简单的方法
  • sql server如何使用
  • centos怎么查看文件
  • dos命令 新建文件
  • .ccc是什么文件
  • u盘里装pe系统
  • window10自动开机怎么回事
  • opengl纹理采样
  • node.js的express
  • 搭建android开发环境实验原理
  • unity shader editor
  • opengl绘制三维图形代码
  • linux怎么调用python
  • cocos 2d x
  • JavaScript中数组包含的属性和方法有哪
  • js怎么检查错误
  • android的intent介绍
  • ubuntu下安装visual studio
  • shell 记录日志
  • 简述javascript
  • 在javascript中什么方法可以对数组元素进行排序
  • javascript怎么学
  • 超清晰的壁纸
  • 变更税务登记后多长时间生效
  • 代理记账公司自查自纠情况报告范文
  • 人工成本占企业利润比例
  • 土地整治税率是多少
  • 安徽省滁州市税务局地址
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设