位置: 编程技术 - 正文

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(){…})()(深入理解新发展理念,推进供给侧结构性改革 心得体会)

  • 什么是增值税扣缴义务
  • 企业所得税的账户设置
  • 浙江注册税务师考试时间
  • 发票作废了清单一样怎么重新使用
  • 企业所得税季报可以更正吗
  • 房地产企业的预收账款包括什么
  • 发票加盖公章有用吗
  • 制造费用折旧费转入生产成本吗
  • 小规模纳税人物流服务税率
  • 金税三期房产税源信息更改后
  • 出口转内销进项转出
  • 个税计算方法举例讲解
  • 低值易耗品属于资产类
  • 注册资金印花税怎么算
  • 退休职工费用哪里列支
  • 小规模纳税人教育费附加和地方教育费附加减免
  • 向关联企业借款债资比
  • 加工业务怎么报税的
  • 负数发票是做相反分录还是红字相同分录
  • 代扣代缴增值税可以抵扣进项税?
  • 返利冲减销售收入还是进费用
  • 发票产生的材料是什么
  • phpadmin官网
  • wordpress怎么上传网站
  • 路由器重启以后wifi不见了
  • 前端向后端传值的函数
  • 油气勘探支出包含哪些
  • php封包
  • php_fpm
  • 2023前端面试题csdn
  • php zend
  • 报销差旅费的会计分录为什么是其他应收款
  • 车船税发票丢失
  • tsconfig baseurl
  • 猿猴的作文
  • 删除cmd命令记录
  • ps命令显示进程状态
  • trap指令在用户态执行
  • 条形码费用属于哪个科目
  • 拆迁支出包括哪些
  • 织梦模板首页logo修改
  • 担保公司的风险准备金在报表中如何反应
  • 发票识别
  • 如何在Access中设置有效性规则必须大于等于0
  • 其他应收款余额在贷方什么意思
  • 利润表中的利息费用是利息支出吗
  • 企业之间利息收入开票吗
  • 发票清单用什么章
  • 我国消费现状分析
  • 商业折扣怎么扣
  • 贴现利息高好还是低好
  • 残保金新公司第一年免费吗
  • 预付调整到其他应付款
  • 发票作废有什么后果
  • 代理出口业务会计分录
  • 私企的会计都做什么
  • iexplores.exe是什么病毒
  • 安装ubuntu后无法进入windows
  • mac自带功能流程图
  • centos pptpd
  • win8 boot manager
  • cad90度角
  • kazaalite.exe是什么进程 kazaalite进程有什么用
  • Win10系统怎么打开IE浏览器
  • Metaio in Unity3d 教程--- 一. 搭建环境,运行官方案例
  • android openconnect
  • bootstrap designer
  • apk防止反编译
  • Cocos2dx3.2 Crazy Tetris update 定时更新 游戏逻辑处理
  • awk fnr nr
  • 批处理 全局变量
  • cocos2dx-js
  • core文件的作用
  • linux BASH shell下设置字体及背景颜色
  • python如何处理文本
  • unity连接
  • bootstrap导航栏怎么居中
  • android底部弹出页面
  • 非税收入纳入一般公共预算管理
  • 怎样登录市地税局网站
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设