浏览器兼容的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写法总结.docx

浏览器兼容的JS写法总结 浏览器兼容的JS写法总结,涵盖的内容很全面,感兴 趣的小伙伴们可以参考一下 document? all[name] (1)现有问题:Firefox 不支持 document, all [name] (2)解决 方法:使用 getElementsByName (name), getElementByld (id)等来替代。 集合类对象问题 现有问题:IE中对许多集合类对象取用时可以用(), 但在F irefox只能用[]。 女口: IE 中可以使用 document, f or ms (/zformN aine〃)来 返回名字为^formName^的Fonn,但在Fire fox却行不通。 解决方法:使用口,上例中可以改为doc ument? forms [〃formName〃] HTML元素的ID在JavaScr ipt可见 现有问题:IE中HTML元素中的ID可以作为d ocument的下属对象变量名直接使用。在F irefox中不能。 解决方法:使用 getElementB yId(/zidName “)代替 idName作为对象变量使用。 e val (idName)取得对象 (1)现有问题:在IE中,利用e val (idName)可以取得 ID为idNa me的HTML对象,在Firefox中不能。 (2)解决方法:用 getElementB yld(idName)代替 eval (idNa me) o nbsp; 变量名与某HTML对象ID相同 现有问题:在Firefox中,因为对象ID不作为 HTML对象的名称,所以可以使用与HTML对象id相同的变 量名,IE中不能。 解决方法:在声明变量时,一律加上VQG以避免 歧义,这样在IE中亦可正常运行。此外,最好不要取与 HTML对象 HTML对象id相同的变量名, 以减少错误。 注:3、4和5都属于同一类的问题。 F rame 现有问题:在IE中可以用w indow. top. f rameId 和 wind ow. top. fram eName 来得到该 Fr ame 所代表的 Wind ow, Firefox 中只能用 window. t op. frameNam e。 解决方法:将Frame的Id和Name设置成相同,使 用 window. top ? frameNQine 来访i可 Frameo 二、DOM操作 1?设置元素的文本内容。 现有问题:IE使用inn erText,而Fir efox使用 textC ontent来设置元素文本内容。 解决方法:如果文本内容不包含〃It;〃和〃gt ;〃等特 殊字符,可以使用innerHTMLo否则,可以使用: v archild=ele m. firstCh订 d; if (chil d!=null)ele m. removeChi ld(child); elem. appen dChild (docu merit, create TextNode (co ntent)); 2 . parentElem ent, parent. children 现有问题:IE可以使用parentEle merit获得父结 点,p arent. child ren得到结点的所有孩子结点。 Firefox 不支持。 (2)解决 方法:使用parent Node和 parent ? childNodes。 对 childNo des 的解释。 (1 )现有问题:IE和Fi refox中对chil dNodes的解 释不同,IE不会包含空白文本结点,而Firefox会包含。 解决方法:使用childN odes过滤文本结点,如下: nbsp; v archildren=elem? childN odes; nbsp ;for (i=0; il t;children. length; i++) { nbsp;nbs p; if (childr en[i]? nodeT ype!=3) {//过滤文 本结点 nbsp;n bsp;//??? nb spjnbsp;} nb sp;} 对 do cument. getE lementsByNa me 的解释。 (1)现有问题:IE中get ElementsByN ame只会检查 It; i nputgt;和It; imggt;元素,而在Firefox下会检查所 有元素。 (2)解决方法:不要使用get ElementsByN ame检查除 It; in putgt;和It; i mggt;之外的元素,如果要获得单个元 素,尽量使用 getEleme ntByldo 对 document, g etElementBy Id 的解释。 (1)现有问题:IE中ge

文档评论(0)

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

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

1亿VIP精品文档

相关文档