为什么我的应用程序中的某些组件(基于JS)在IE7中工作但在IE9中不工作?例如,我的一个复选框dint在IE9中工作,但是一旦我将文档模式切换到IE7,它就可以正常工作。
理想情况下,在以前版本的浏览器中运行的东西也应该在较新版本中运行。可能是我不明白IE是如何发生的。有人可以帮我理解这个吗?
答案 0 :(得分:1)
虽然确实有一种理想,即事物继续以他们的方式运作,但创新和兼容性之间存在着自然的紧张关系。前者提供了更容易做事的新方法。后者希望最大化以前投资的回报。事实上,事情会随着时间的推移而发生变化,必须保持应用程序的相关性和功能性。
在最近的版本中,IE团队投入了大量的时间和精力,使IE与各种Web标准和其他主流浏览器更具互操作性。这意味着更多地关注常见行为,而不是专注于专有功能或旧技术。
没有关于失败的组件的更多具体细节,例如底层代码和错误条件,人们只能推测原因。您的组件可能依赖于较新版本的IE中no longer supported的功能。在最新版本的IE中,您的组件可能依赖于behavior that's changed。很难说。
您将需要深入了解您的组件并找出它们失败的原因。 IE Compatibility Cookbook可能有所帮助,因为它描述了IE最新版本中的许多兼容性更改。此外,F12 developer tools可能有助于识别组件中的问题。
但是,如果没有更具体的信息,很难提供具体的答案。
希望这会有所帮助......
- Lance