位置: 编程技术 - 正文

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

  • 离境退税政策文件
  • 离职补偿的扣税比例
  • 长租公寓 税费
  • 如何查商品税收分类编码
  • 网络贷款需要交钱吗
  • 一般纳税人增值税会计账务处理
  • 支付短期借款利息的会计科目
  • 公司申请破产后股东需要还债吗
  • 增值税发票遗失怎么操作
  • 开票信息中电话号码变更
  • 房地产企业预收款预缴增值税
  • 物业公司代收代付水电费会计分录
  • 车间固定资产折旧属于什么科目
  • 小规模附征税减半吗亲
  • 年终奖扣税和工资扣税
  • 借款利息不能抵扣进项税
  • 所有利息收入都免税吗
  • 专项应付款增加记哪方
  • 品牌店设计费入什么费用
  • 购进商品用于样品赠送的账务处理
  • 员工休产假期间公司发工资吗
  • 收到政府拨款怎么做账
  • 小规模普通发票可以抵扣吗
  • 主营业务成本算损益类科目吗
  • 前期差错更正怎么计算
  • 民间非营利组织会计制度及操作实务
  • PHP:Memcached::__construct()的用法_Memcached类
  • 年终奖一般发什么奖品
  • 为什么不能零申报
  • 蛇形矩阵找数的位置
  • axios有哪些常用方法
  • 编译redis报错
  • 工业会计和商业会计有什么区别
  • 如何查询企业财务负责人是否变更了
  • adas数据集
  • 使用微软必应需要哪些条件
  • 建筑企业其他应付款
  • 公司购买办公用品会计分录
  • 哪些费用发票可以抵扣企业所得税
  • mysql存储引擎是什么意思
  • 拆迁补偿账务处理办法
  • 铁路运费的印花税进什么科目
  • 现代服务增值税纳税义务发生时间
  • 上市公司净资产转正的方法
  • PostgreSQL中使用dblink实现跨库查询的方法
  • 债务抵销的顺序
  • 运输发票抵扣税额怎么算
  • SQL SERVER 2000 9003错误的解决方法(只适用于SQL2000)
  • 应付利息的账务处理
  • 小规模减免的增值税
  • 小公司财务做内账流程
  • 什么是原始凭证?简述原始凭证审核的内容
  • 接待客人后的感受和过程
  • 股权质押和股权抵押有什么区别
  • 补缴以前年度的增值税以及附加税,还有罚款的账务处理
  • 应收账款少收会计分录
  • 网上购物没有发票
  • 事业单位非税收入帐务处理
  • 工会经费会返还吗
  • 固定资产计提折旧的会计科目
  • 教育机构的咨询
  • sqlserver日志已满
  • mysql 远程连接不上
  • 升级bios后无法启动
  • WIN10如何设置字体大小
  • xp系统个性化
  • windows8蓝牙设置在哪里
  • PQIMountSvc.exe是什么进程 PQIMountSvc进程查询
  • 批量替换在哪
  • linux dig命令
  • javascript内存管理
  • 自动登入
  • 基拉大和 freedom
  • shell命令for
  • python数字类型及操作
  • jquery中选择器分为哪三种
  • 网上交购置税怎么拿完税证明
  • 纳税申报2020年2月
  • 税务有哪些方面
  • 武汉市江汉区财政局这个单位的公务员待遇怎么样?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设