位置: 编程技术 - 正文

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最新
  • 固定资产作为实收资本报废怎么处理
  • 认可的发票验证怎么弄
  • 应交增值税减免税款账务处理
  • 应交税费算什么费用
  • 2017房地产行业流动比率均值
  • 出口企业收到的货款是人民币还是美元
  • 培训费表格
  • 小区保安有收物业费的权利和义务吗?
  • 京东白条账单制和订单制是什么样的
  • 小型微利企业的税收政策
  • 销售折扣单独开票
  • 交通费用扣除标准
  • ThinkPHP让../Public在模板不解析(直接输出)的方法 原创
  • win切换平板模式
  • 笔记本显示器分辨率无法调整怎么办
  • 增值税按简易计价方式
  • 关于固定资产抵扣的税务规定
  • 嘴型融合 wav2lip 升级版
  • 华侨是否适用个人所得税
  • vue的路由实现
  • 报废汽车残值收入如何计税
  • css鼠标移入移出切换事件
  • vue $函数
  • php7.2新特性
  • 现金日记账每月都做本年累计数吗?
  • 房地产股权转让涉及哪些税费
  • 预收账款需要申请吗
  • 用于app服务端的加速器
  • sql server 18486
  • sqlserver时间格式化时分秒
  • 预提费用是应付账款吗
  • 开普票需要公对公吗
  • 固定资产报废账面价值
  • 计提未发生的费用
  • 已认证发票作废是购买方申请吗
  • 残保金属于职工社保吗
  • 外购货物用于促销的账务处理
  • 冲减应收账款该怎么处理
  • 小微企业免税销售额怎么填
  • 外贸企业退税政策
  • 营业执照以外的算无证经营吗
  • 本期盈余结转会亏损吗
  • 排污费主要用于哪些方面
  • 专票多少钱
  • 旅游服务住宿费公司不给报销
  • windows xp正式退休
  • 在window中
  • xp系统磁盘检查进不去
  • win10累积更新 卡住
  • mac 菜单
  • mac如何修改用户名称
  • centos7启动卡在界面
  • win10怎么转移文件到其他盘
  • Win10手机版校
  • linux如何查看防火墙配置
  • js类的实现
  • opengl三维场景
  • unity 面向对象
  • jquery22插件网
  • Android4.4 wpa_supplicant深入分析之wpa_supplicant初始化流程续
  • python连接mysql实例分享
  • js设计模型
  • 内容滑动切换效果怎么弄
  • jquery实现原理
  • github docs
  • 增值税申报表如何填报
  • 税务执法资格考试
  • 临时税务登记证是什么意思
  • 北京税务师取消了吗
  • 进口完税价格包括哪些部分
  • 国家税务总局2016年17号公告
  • 河南政务服务网官网
  • 河北税务登录密码是多少
  • 企业以自有物业为单位
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设