位置: 编程技术 - 正文

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

  • 收到退个税手续费要交增值税吗?
  • 对外支付哪些项目需要缴税
  • 进口货物复合计税的应税消费品包括
  • 外籍人员可以在中国工作吗
  • 增值税普票没有税号可以开吗
  • 工商年报纳税总额怎么算
  • 业务提成模版
  • 年利润100万要交多少企业所得税
  • 资产减值损失在利润表怎么填列
  • 金税盘开具发票 在增值税申报表哪填写
  • 预提费用账户期末
  • 公关费用明细表
  • 营改增后还有营业费用吗
  • 分摊长期待摊费用的会计分录
  • 自主就业退役士兵从事个体经营的
  • 补贴与工资薪金一起发放,属于福利费,还是纳入工资薪金总额税前扣除?
  • 公司购买宿舍楼申请书
  • 长期待摊费用无发票怎么处理
  • 减半征税怎么算
  • 增值税的计征方法有哪些
  • 租房合同开发票的金额要和合同一致吗
  • 没有结转损益影响利润表吗
  • 怎么确认投资性资金
  • 设备器具一次性扣除会计分录
  • 进项税额已经认证抵扣了怎么处理
  • 净资产收益率摊薄
  • 公司增资怎么做
  • 跨境电商的账务怎么做
  • 修改hosts文件的软件
  • filecopyutils.copy上传文件
  • iphone6s显示4g却无法上网
  • 计提本月应缴纳的所得税
  • php ftp上传文件
  • 预付下年度广告费会计分录
  • 失业保险稳岗补贴是什么意思
  • 如何申请菜鸟驿站快递代理点
  • php getheader
  • 短期借款利息的核算不可能涉及的账户是
  • php图片大小设置
  • 国际税收协定有哪些主要内容
  • thinkphp框架怎么用
  • 增值税专用发票抵扣期限
  • html5 function
  • mysql用在哪些方面
  • 企业向个人提供分期的商业活动属于
  • 收付转凭证和记帐凭证的区别?
  • 背书转让流程图
  • mysql数据查询慢
  • 已付预付款当月怎么入账
  • 涉外收入申报单怎么填
  • 事业单位项目结算审计报告
  • 工程增值税抵扣比例
  • 单身租房子
  • 购销业务活动包括哪些
  • 银行存款日记账怎么记账
  • 进口货物只有报关单能入账吗
  • 个人银行帐户可以代理销户吗?
  • 作废发票丢了罚款多少
  • 工业企业销售商品
  • 如何保证系统异常状态
  • cmd提示符基础知识
  • win键有啥用
  • 在window中
  • win7系统设置开机启动项
  • win8怎么设置开机直接进入桌面
  • win1020h2累积更新
  • macbook qq截图存在哪
  • win7电脑无法上网 连接正常
  • bootstrap designer
  • Android之Android apk动态加载机制的研究
  • shell.epc
  • js创建元素
  • css框架结构
  • 超实用的八个开车技巧
  • 详解node HTTP请求客户端 - Request
  • 常用python编程软件
  • 经常用到的图像格式有
  • 企业所得税报错了税款扣了可以改吗
  • 江苏国税电子税务局网登录
  • 深圳市国家税务局电子税务局官网
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

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

    友情链接: 武汉网站建设