位置: 编程技术 - 正文

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篇
  • 出售股权账务处理
  • 施工单位奖金分配方案
  • 公司回购房产契税谁交
  • 公司广告法违规交不起罚款怎么办
  • 公户可以在淘宝下单吗
  • 仓储部门折旧计入什么科目
  • 合伙企业可以弥补以前年度亏损吗
  • 预收账款开票可以抵扣吗
  • 企业去年
  • 劳务税能不能抵扣
  • 财务科目明细表格模板
  • 继续教育专项附加扣除标准
  • 当月已认证的可抵扣增值税
  • 工会经费该怎么交
  • 费用跨年的分录怎么做
  • 小型微利企业的优惠政策
  • 联想一体机如何调节屏幕亮度
  • 兼职人员工资如何扣税
  • 慈善捐赠金额排行
  • 抵扣了进项税额
  • 外籍人员个人所得税政策2023规定
  • 结存材料实际成本例题
  • msstat.exe - msstat是什么进程 有什么用
  • 1050ti能玩绝地求生吗
  • 手机短信是哪一年开始的
  • php 二叉树的遍历
  • PHP:zip_entry_compressionmethod()的用法_Zip函数
  • 解聘员工补偿金能拖欠吗
  • 城镇土地使用税纳税义务发生时间
  • 企业所得税核定征收方法有哪两种
  • 固定资产备抵科目怎么填
  • php引用返回用法怎么用
  • 记账凭证错误用什么更正
  • 电子客票行程单怎么获取
  • 专票当天可以领取吗
  • python的多线程 吃cpu太厉害
  • 织梦cms要钱吗
  • 收购企业怎么做账
  • 通过SQLServer 2008 操作 MySQL的方法
  • 建筑公司预收工程款
  • 缴纳残保金工资是实发工资还是应发工资
  • 必要报酬率和期望报酬率谁大更好
  • 应收账款周转率计算公式
  • 房地产企业按简易计税
  • 本期预付的费用属于本期费用吗
  • 基建待摊费用如何分摊
  • 印花税的征税对象有哪些
  • 没有发票的费用怎么入账
  • 买公司的钱计入什么科目
  • sql语句重复
  • solaris 安装
  • win8.1关机
  • linux系统的
  • xp桌面底部任务栏不见了
  • linux修改密码认证令牌错误
  • win7安装无法将windows配置为在此计算机上运行
  • ubuntu 20.04 unity
  • 联想笔记本出厂编号
  • windows7调节音量
  • win7的环境变量如何还原
  • js实例教程
  • visual studio 10 cocos2dx项目移植到eclipse的android项目(配置请参照上一篇文章开发环境搭建)
  • Unity3D游戏开发pdf
  • Node.js+jade+mongodb+mongoose实现爬虫分离入库与生成静态文件的方法
  • 村委会税务登记流程
  • 福州税务局几点关门
  • 安徽省历任书记
  • 河北税务云办税厅官方
  • 如何运用投资组合理论
  • 税务局签合同
  • 江西省地税局官方网站
  • 电力营销岗
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设