位置: 编程技术 - 正文

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

  • 减免税流程
  • 经营租赁增值税税率3%
  • 转出未交增值税是借方还是贷方
  • 出口退税的账怎么做
  • 以公司名义买50万的车可以省多少钱
  • 普票不能抵扣要坐在帐里吗
  • 固定资产大修理的标准
  • 企业的承兑汇票贴息很高说明什么
  • 财务软件怎么结转本年利润
  • 连续亏损3年
  • 电子发票错误怎么重开
  • 工程的管理费收入怎么算
  • 交易性金融资产和其他权益工具投资的区别
  • 政策信息咨询服务要到哪个部门办理资质
  • 退运出口货物的报关流程
  • 增值税专用发票电子版
  • 转让折旧怎么算
  • 酒店怎么付钱
  • 前程无忧靠什么赚钱
  • 转让长期股权投资交什么税
  • 收回的材料赔偿款怎么处理?
  • 出口发票税率开错了怎么办
  • 按期汇总缴纳印花税可以退税吗
  • 如何计算纳税调整增加额
  • 房租发票9%还是5%
  • 河道工程维护管理费征收
  • 矿产资源税是多少
  • 专项发票和普通发票的税点
  • 税法相关问题
  • 浅谈收入与成本的关系
  • 营改增后餐饮业税种
  • 无形资产怎么核算成本
  • 政府补贴冲减资产原值
  • windows右键刷新总是卡住
  • 差错更正未来适用法
  • 企业与企业之间进行的电子商务模式是
  • php发送电子邮件
  • nuxt支持vue3吗
  • remupd.exe - remupd是什么进程 有什么用
  • 外销收入含税吗
  • 扣缴义务人应扣未扣如何处罚
  • 一只什么海鸥填空
  • 购买货物对方代付怎么办
  • 公司银行账号注销需要什么资料
  • 每个季度30万免增值税
  • 摊销结束后
  • 使用xampp建立www服务
  • mysql查询性能优化
  • MySQL5.1忘记root密码的解决办法(亲测)
  • 2021新旧会计准则的比较分析
  • 存货出入库需要什么凭证
  • sqlserver2012安装好了桌面没有图标
  • 专项资金支出流程
  • 借贷记账法的记账依据是什么
  • 公司章程在工商局盖章需要什么
  • 长期待摊费用好处
  • 了解出口业务操作流程
  • 一般存款账户可以办理现金缴存但不得办理现金支取
  • 向母公司贷款利率是多少
  • 进口形式发票能证明商品是进口的吗
  • 外经证预交税款可以以后月份抵扣吗
  • 行政事业单位固定资产计提折旧
  • 租用办公楼的装修协议
  • 营业外收入算未开票收入吗
  • 商业银行的固定资产
  • mysql中binlog_format模式与配置详细分析
  • windows8计算机在哪儿
  • 注册表修改的方法有哪几种
  • 虚拟机怎么安装exe文件
  • win10首个正式版发布日期
  • ubuntu14.04升级
  • JavaScript中的复杂数据类型又称为
  • js实现新浪博客推送
  • qrcode怎么生成
  • jquery常用操作
  • python正则函数
  • 事务所是干什么的会计
  • 申请电子发票需要盖章吗
  • 没工作个人所得税
  • 中介服务行业
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设