如何处理破碎的浏览器?

时间:2016-11-16 07:31:20

标签: javascript browser cross-browser

我有一个普遍的问题。我正在研究我的第一个JavaScript程序,当我正在研究它们时,我遇到了一些奇怪的“破坏浏览器”问题。

在我的计划工作的几周内,我经常在不同的浏览器和计算机系统上测试该项目。在这样做时,我在特定版本中观察到Firefox和Chrome上的奇怪行为。在这两种情况下,程序在两种浏览器中都运行良好,然后突然我在一台机器上的Windows上遇到了Firefox问题。经过一些研究,我试图更新浏览器,问题就消失了。我在Linux上使用Chrome时获得的相同体验。它运行正常,然后突然我遇到了Chrome 48的问题。我在Mac和Windows上测试了程序,一切都很好。然后我认识到这台机器上的浏览器有54版本。所以我在我的Linux机器上更新到最新版本,问题就消失了。

我的问题:在特定版本的浏览器中发生此类事情是否正常,如果是这样,如果您正在处理更大的项目,如何处理它?<​​/ p>

编辑:从下面的答案中我看到我不清楚我的问题。问题不是关于跨浏览器兼容性,而是关于为什么程序在chrome v47中工作,而不是在v48中,然后它在v54中再次工作。 Firefox和其他浏览器也是如此。

1 个答案:

答案 0 :(得分:0)

您必须阅读有关跨浏览器兼容性的信息。 每个浏览器可能具有不同的特定功能实现,甚至没有。 对于像IE8这样的老式浏览器,甚至更简单的window.innerWidth 不起作用。

jQuery可能会对您有所帮助。它的库有效地为许多情况提供了跨浏览器兼容性。 测试浏览器是否支持某些功能的另一种方法是使用Modernizr

您还可以通过caniuse.com等网站手动检查支持 - 主要用于CSS样式,但也适用于js