Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript DOM操作、向后兼容性和跨浏览器问题_Javascript_Dom_Cross Browser_Backwards Compatibility - Fatal编程技术网

Javascript DOM操作、向后兼容性和跨浏览器问题

Javascript DOM操作、向后兼容性和跨浏览器问题,javascript,dom,cross-browser,backwards-compatibility,Javascript,Dom,Cross Browser,Backwards Compatibility,我是否可以安全地使用现代DOM操作和遍历方法,如document.querySelector,而不必担心向后兼容性和跨浏览器遵从性?我将在这里进行任意选择,这当然会引起许多Parsec的争论 我认为现代浏览器的列表基于它们对W3C标准的遵从性和可用性: Firefox(版本35及以上) Chrome(版本31及以上) Internet Explorer(版本10及以上),包括手机 Safari(7.1及以上版本) IOS Safari(7.1及以上版本) Android浏览器(版本37及以上)

我是否可以安全地使用现代DOM操作和遍历方法,如
document.querySelector
,而不必担心向后兼容性和跨浏览器遵从性?

我将在这里进行任意选择,这当然会引起许多Parsec的争论

我认为现代浏览器的列表基于它们对W3C标准的遵从性和可用性:

  • Firefox(版本35及以上)
  • Chrome(版本31及以上)
  • Internet Explorer(版本10及以上),包括手机
  • Safari(7.1及以上版本)
  • IOS Safari(7.1及以上版本)
  • Android浏览器(版本37及以上)
  • Chrome(移动版)(从版本40及以上)
这些浏览器都能够使用现代CSS选择器,
document.querySelector
DOMParser
innerHTML
outerHTML
insertAdjacentHTML
document.getElementsByClassName
。有关浏览器使用情况的一些统计信息:

来自的全局浏览器统计信息。(非特定版本)

2015
Chrome IE Firefox Safari Opera
2月62.5%8.0%22.9%3.9%1.5%
1月61.9%7.8%23.4%3.8%1.6%
来自的全局浏览器统计信息。(非特定版本)

2014年2月至2015年2月
Chrome IE Firefox Safari Opera其他
46.08%  20.78%  17.67%  10.36%  1.42%   3.69%
来自的全局浏览器统计信息

2015年2月
IE8 IE9 IE10 IE11
2.9%    1.82%   1.44%   8.02%
FF 35 FF36 FF37 FF38 FF39
8.93%   0.72%   0.02%   0%      0%
Chr 38 Chr 39 Chr 40 Chr 41 Chr 42
0.68%   1.97%   27.38%  0.19%   0.17%
Sfr 7.1 Sfr 8
0.59%   1.33%
Isfr 7.1 Isfr 8.1
1.6%        5.1%
铬安卓40
10.51%
向后兼容性 在谈到DOM操作和向后兼容性时,这些始终是安全的选项:

文档上

  • document.getElementById
    ,从IE5.5/FF1.0/Chrome 1开始支持
  • document.getElementsByTagName
    ,自IE5.5/FF1.0/Chrome 1
    *
  • document.getElementsByName
    ,自IE5.5/FF1.0/Chrome1
    *
  • document.createElement
    document.createTextNode
节点上
**

  • childNodes
  • appendChild
    removeChild
    replaceChild
  • setAttribute
    removeAttribute
    getAttribute
  • cloneNode
    parentNode
  • 包含
  • 上一个兄弟姐妹
    下一个兄弟姐妹
决定是否需要支持较旧的浏览器完全由您决定。如果你的雇主仍在使用IE6,那么你需要支持这一点(并说服你的老板升级),但是可以假设全球65%以上的互联网用户正在使用现代浏览器。当放大第一世界国家时,这个数字会上升

*
注释也适用于
元素


**
注意,
元素
继承自节点

查找使用选择器的Jquery是一种简单的管理方法。