位置: 编程技术 - 正文

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

  • 注册公司不开账户可以吗
  • 小规模首次申请发票张数
  • 红字信息表撤销失败B80095
  • 2019年小型微利企业优惠政策
  • 企业入统的利弊
  • 地下建筑房产税减免优惠政策
  • 会计集中核算模式
  • 农产品进项税额计算扣除的方法
  • 职工出差餐费计入什么科目
  • 零售商品收入会计分录
  • 餐饮会员充值赠送内帐怎么做账务处理
  • 个人所得税免征项目有哪些
  • 缴纳印花税需要计提吗?
  • 支付的票据承兑手续费计入财务费用
  • 提前退休取得的一次性补贴收入
  • 关联企业的认定标准司法
  • 建筑企业在增值税方面新出台的政策
  • 财税2010121号文件有效吗
  • 税务三方协议一式几份
  • 如果月初忘记抄税直接开票怎么办
  • 母子公司可以汇资金吗
  • 个体户进项发票多开出发票少怎么办
  • 没有成立工会的企业要交工会筹备金吗
  • 对外投资的风险及对策
  • 每季度财务报表
  • 护建设税和教育费附加?
  • 事业单位自由资金怎么入账
  • 鸿蒙系统 3.0
  • 代扣代缴个人所得税怎么算
  • PHP:pg_connection_busy()的用法_PostgreSQL函数
  • php面向对象面试题
  • 科托儿古城
  • 微信小程序实现灯泡开关效果
  • 债务重组亏损计入
  • 购买电脑固定资产怎么记账
  • 保姆分为哪些级别
  • js实现继承属性功能
  • php 验证类
  • 中央空调的维护和保养
  • 电信收款收据可以入账吗
  • 生产劳务成本会计分录
  • 将表里的数据批量删除
  • 个税租房租金扣除规则
  • 新公司筹建期要做账吗
  • 企业管理费用的分类
  • 当月计算的增值税是负数怎么办
  • PostgreSQL教程(六):函数和操作符详解(2)
  • 发票已开不确认收入可以做吗?
  • 个税申报哪些可以减免
  • 2019年无形资产的摊销额为
  • 员工垫付费用怎么做账
  • 短期借款利息的使用账户是
  • 代理记账服务业务内容
  • 质量问题扣货款会计怎么处理
  • 未达到起征点的税金怎么做凭证
  • 广告公司如何开展业务
  • 会计账簿有哪些格式
  • 小企业建账选哪种会计制度
  • mysql导入数据语句
  • windows怎么加速
  • windows.old文件夹有啥用
  • ubuntu nginx webdav
  • mac系统 硬盘
  • sxgdsenu.exe - sxgdsenu是什么进程 有什么用
  • window10光驱
  • 360修复win7
  • 批处理删除空文件夹
  • 批处理常用命令总结
  • perl脚本函数
  • perl getoption
  • android工程目录
  • python向csv写入数据
  • JavaScript中的数据类型
  • web 开发
  • 面向对象三大基本特性
  • 河南网上税务申报步骤
  • 江苏税务局开票在哪看的
  • 珠海市中心
  • 洗煤与选煤
  • 城市配套费需要缴纳契税
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设