位置: 编程技术 - 正文

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

  • 合同取得成本属于
  • 公司的纳税信用等级对财务人员有什么影响
  • 存货售出后是否含税
  • 印花税核定征收的计税依据
  • 企业重组失败会怎么样
  • 住房公积金在个税中如何扣除
  • 汽车4s店索赔和维修
  • 汇总记账凭证核算组织程序的缺点主要有
  • 一般纳税人购入商品取得普通发票
  • 无合同销售收入怎么算
  • 佣金付给别人公司违法吗
  • 所得税汇算清缴补税的会计处理
  • 个人企业属于什么部门管理
  • 装修发票是什么发票
  • 关于进项税额转出的规定
  • 广告费和业务宣传费扣除标准2023
  • 生产企业出口退税操作流程视频
  • 汇算清缴的费用合计是什么
  • 初级备考计划表
  • 私人公司老板
  • 华为手机如何关闭负一屏
  • win10一段时间不动黑屏
  • 抵押和质押的区别主要表现在哪些方面
  • 公司处理固定资产车辆怎么开发票
  • 企业存款利息收入要交哪些税
  • window11 正式版
  • 扶贫入股分红政策
  • awk命令怎么用
  • vue blob下载文件
  • live updater
  • 长期借款利息的会计科目
  • 巴尼奥斯附近的阿格杨瀑布
  • php删除语句
  • 员工预支款计入什么科目
  • 加班补贴费
  • 购置固定资产进项税率
  • 工程主营业务收入
  • 上个月没有清卡在其他地区税务
  • 税款追征期三年
  • 未确认融资费用怎么算
  • mysql存储过程的作用
  • ibps对公提回贷记有什么影响
  • 产品研发项目管理 系统 国外
  • 总资产报酬率的公式
  • 对外公司
  • 退回多交的所得税抵欠税怎么做账
  • 应付职工薪酬中社保费怎么记账
  • 多计提的工资怎么调账
  • 农场有多少只鸡
  • 增值税发票抵扣期限是多久
  • 进项增值税发票抵扣期限
  • 应付账款负数如何调整账务
  • 退回的个税手续费如何账务处理
  • 暂估入库成本处理
  • 园林绿化公司的税率是多少
  • 固定资产报废会计
  • 手写账目表格怎么做
  • 发票内容可以写工程款吗
  • 为什么说进项和销项是相对的
  • 银行余额调节表电子版
  • 会计出账入账怎么做
  • 硬盘磁盘保护
  • LiteSpeed添加虚拟主机+支持htaccess图文教程
  • 延迟windows更新
  • linux如何配置双网卡
  • Facebook Open Platform编译FAQ
  • win7右下角无线网络连接图标不见了
  • win8隐藏的文件夹怎么找出来
  • 置顶聊天折叠怎么开启
  • js必须掌握的知识点
  • linux查看远程服务是否开启
  • excel替换一行内容
  • 安卓开发常见问题解决
  • 用python画roc曲线
  • 微信扫码开票的记录怎么查询
  • 如何查询车辆购买的保险是哪家保险公司
  • 纳税人分类分级管理四个匹配
  • 保险免保费是什么意思
  • 冷库出租企业有哪些
  • ca证书怎么删除
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设