位置: 编程技术 - 正文

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

  • 小规模纳税人的企业所得税税率
  • 增量留抵退税会计处理
  • 增值税的免税项目有哪些
  • 一般纳税人的增值税征收方式的特点是
  • 消费税可以在企业抵扣吗
  • 银行存款余额调节表编制
  • 月末怎么计提税费
  • 印花税申报减免额不能为0怎么报
  • 资产总额和权益总额必然相等吗
  • 发票分开开票
  • 滴滴电子发票可以看到行程吗
  • 销售煤炭增值税怎么算
  • 建筑企业如何预缴税款
  • 采购商品未入库的会计分录
  • 开专票都需要什么资料
  • 税后扣税
  • 一般纳税人进货收到普通发票
  • 物业公司代收的电费差额收入
  • 小规模纳税人可以开3%的专票吗
  • 年金计算个税需要扣除吗
  • 采购合同中含税金额
  • 开具的销项发票是否都要入收入科目吗?
  • 增值税普票丢失发票联能重开吗
  • 同程旅行酒店预订
  • 专票开错了可以作废吗
  • 财税〔2017〕39号
  • 乙公司为支付甲公司货款向其签发
  • 一般纳税人购车可以抵扣多少税
  • 长期股权投资用交印花税吗
  • 劳务派遣公司增值税税率
  • linux 如何查看网卡信息
  • 商业承兑汇票到期兑现流程
  • 公司向股东借款合法吗
  • harmonyos2.0.0怎么用
  • awk命令怎么用
  • 股东以债权出资,公司怎么处理
  • 为什么连接无线网超时
  • zend framework手册
  • 机关事业单位购买茶叶违反什么规定
  • 个人所得税通过扣缴义务人申报
  • eltable数据多 卡
  • 深入浅析SQL Server 触发器
  • 博客首页设计
  • 法人股东 分红
  • sql分页存储过程
  • windows下MySQL 5.7.3.0安装配置图解教程(安装版)
  • 土增清算可以扣除项目
  • 监控 固定资产
  • 期末留抵的税额怎么做分录
  • 应收账款计提减值准备会计处理
  • 转让股权需要缴纳哪些税
  • 亏本处理产品怎么做账
  • 处置全资子公司合并报表
  • 发票遗失重开需要收费吗?
  • 未开票收入下月开票会计分录
  • 收到发票税点计入什么科目
  • 原始凭证留存几年
  • sql比较数值大小
  • windows10创意者更新
  • wlltweak.exe
  • window照片无法预览
  • ubuntu 改名
  • win10 固态
  • cocos2dx游戏开发进阶卷这本书怎么样
  • ExtJS GridPanel 根据条件改变字体颜色
  • Unity3D游戏开发pdf
  • 内部变量 变成 外部变量
  • Python连接access数据库
  • unity openvr
  • 简述js json对象和字符串的转换方式
  • javascript canvas方法有哪些
  • js canvas绘制图片
  • 通过jquery实现页面的动画效果(实例代码)
  • JavaScript中的事件处理
  • 河北税务医保缴费怎么操作
  • 税务稽查工作底稿属于什么证据
  • 中国的消费税是怎么算的
  • 党费减免规定
  • 打单子的打印机能否打a4的纸
  • 电子票据如何报销
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设