全面跨浏览器JavaScript函数支持清单

11

我重新进入了跨浏览器兼容性的世界,并遇到了一些有关不同浏览器之间Javascript兼容性的问题。

例如,我在CSS样式表中广泛使用样式继承,因此如果我需要编辑一个元素的样式,我必须使用window.getComputedStyle(**element**, [pseudoElement]).getPropertyValue(**style**)

这一行代码的使用要求我知道Firefox v<4需要一个伪元素对象,而其他浏览器则将其视为可选参数。此外,Firefox和Opera要求style匹配CSS属性名称,例如font-size,而IE需要使用JavaScript语法中的名称fontSize,因为它将CSS语法中的连字符解释为减号。

这个例子花费了我几个小时的时间来弄清楚为什么早期版本的IE将我的文本调整大小脚本实现为默认大小,而不是元素的计算大小。Mozilla的网站是一个很好的参考,但仅限于他们的浏览器。是否有一个好的全面的跨浏览器函数列表?


这就是为什么跨浏览器库(如jQuery)首先存在的原因。 - Šime Vidas
2
jQuery支持一些较新的浏览器,但并非特别跨浏览器。它更多地是多浏览器支持。它能正常工作主要是因为现代浏览器正在朝着标准化方向发展。 - RobG
2
我是JS的初学者,基本上正在寻找运行页面所需的函数。在跳入jQuery之前,我想更加熟悉JS。 - Jason
@ŠimeVidas 但是不包括移动浏览器,需要使用jQuery mobile。老实说,如果同一个框架不支持两者,我会自己编写代码来实现。 - Michael
@Michael,你能举出在移动浏览器中无法使用的jQuery功能的例子吗?我认为整个jQuery API都可以在移动浏览器中使用。 - Šime Vidas
显示剩余3条评论
2个回答

8
我认为你不可能找到一个列出所有浏览器兼容性问题的网站 - 实在是太多了,要考虑的浏览器也太多了。一些帮助可以在Quirksmode兼容性表格上找到,还有Thomas Lahn的ECMAScript支持矩阵

除此之外,您可以查看各种javascript库源代码并查找注释,但请谨慎使用,因为这些注释通常不正确或用词不当 - 它们并不真正意味着成为浏览器兼容性资源。


3
Mozilla的MDN每个页面底部都有一个关于浏览器对对象/函数支持的通知。但是,它并不是一个详尽的来源。所以,我认为PPK的Quirksmode是最全面的浏览器兼容性来源。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接