JS兼容性问题.docxVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
JS兼容性问题

JS兼容性问题兼容FireFox(FF)、IE的解决方法做BS开发就难免会用到javascript,而每个浏览器对javascript的支持有不同。这就需要我们程序员去兼容他们,不然有些浏览器就无法运行我们的代码。就会造来客户的投诉,如果让BoSS知道了,这可不太好哦。下面是兼容IE和FF的js脚本做法和分解(部分选自网上):????.以下以?IE?代替?Internet?Explorer,以?MF/FF?代替?Mozzila?Firefox??//window.event???IE:有window.event对象???FF:没有window.event对象。可以通过给函数的参数传递event对象。如onmousemove=doMouseMove(event)???//鼠标当前坐标???IE:event.x和event.y。???FF:event.pageX和event.pageY。???通用:两者都有event.clientX和event.clientY属性。???//鼠标当前坐标(加上滚动条滚过的距离)???IE:event.offsetX和event.offsetY。???FF:event.layerX和event.layerY。???//event.srcElement问题???说明:IE下,event对象有srcElement属性,但是没有target属性;Firefox下,even对象有target属性,但是没有srcElement属性.???解决方法:使用obj(obj?=?event.srcElement???event.srcElement?:?event.target;)来代替IE下的event.srcElement或者Firefox下的event.target.?请同时注意event的兼容性问题。??//event.toElement问题???问题:???IE下,even对象有srcElement属性,但是没有target属性;Firefox下,even对象有target属性,但是没有srcElement属性???解决方法:???var?target?=?e.relatedTarget?||?e.toElement;???//标签的x和y的坐标位置:style.posLeft?和?style.posTop???IE:有。???FF:没有。???通用:object.offsetLeft?和?object.offsetTop。???//窗体的高度和宽度???IE:document.body.offsetWidth和document.body.offsetHeight。注意:此时页面一定要有body标签。???FF:window.innerWidth和window.innerHegiht,以及document.documentElement.clientWidth和document.documentElement.clientHeight。???通用:document.body.clientWidth和document.body.clientHeight。???//添加事件???IE:element.attachEvent(onclick,?function);。???FF:element.addEventListener(click,?function,?true)。???通?用:element.onclick=function。虽然都可以使用onclick事件,但是onclick和上面两种方法的效果是不一样的,onclick?只有执行一个过程,而attachEvent和addEventListener执行的是一个过程列表,也就是多个过程。例如:element.attachEvent(onclick,?func1);element.attachEvent(onclick,?func2)这样func1和func2都会被执行。???//标签的自定义属性???IE:如果给标签div1定义了一个属性value,可以div1.value和div1[value]取得该值。???FF:不能用div1.value和div1[value]取。???通用:div1.getAttribute(value)。???//document.form.item?问题??IE:现有问题:现有代码中存在许多?document.formName.item(itemName)?这样的语句,不能在?MF?下运行??FF/IE:?document.formName.elements[elementName]??//集合/数组类对象问题??(1)现有问题:??????现有代码中许多集合类对象取用时使用?(),IE?能接受,MF?不能。??(2)解决方法

文档评论(0)

2017ll + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档