Debugging 您如何检查和测试已知的IE浏览器;特色;?
我的公司利用IE6、7、Firefox和Safari的出色用户体验赚钱。我们90%的流量最终都是IE,大概60%的流量仍然是IE6。IE6有一系列已知的问题,比如在DOM对象仍被插入时访问DOM对象会导致浏览器崩溃。在常规测试中几乎没有这些问题出现,它们几乎总是包括一些奇怪的计时竞赛条件,这些条件只会影响我们本周最重要的客户 您使用什么过程或工具来确保使IE崩溃的已知模式不出现在您的代码中Debugging 您如何检查和测试已知的IE浏览器;特色;?,debugging,internet-explorer,testing,Debugging,Internet Explorer,Testing,我的公司利用IE6、7、Firefox和Safari的出色用户体验赚钱。我们90%的流量最终都是IE,大概60%的流量仍然是IE6。IE6有一系列已知的问题,比如在DOM对象仍被插入时访问DOM对象会导致浏览器崩溃。在常规测试中几乎没有这些问题出现,它们几乎总是包括一些奇怪的计时竞赛条件,这些条件只会影响我们本周最重要的客户 您使用什么过程或工具来确保使IE崩溃的已知模式不出现在您的代码中 补充:对于那些建议坚持使用第三方库的人:我同意这会有很大帮助,但你仍然需要用Javascript将这些AP
补充:对于那些建议坚持使用第三方库的人:我同意这会有很大帮助,但你仍然需要用Javascript将这些API粘在一起。有没有人不只是交叉手指,等待有人在野外让他们知道他们的系统刚刚崩溃了?我们不担心这一点。相反,我们使用第三方工具,如jQuery(好的,正是我们公司的jQuery),以确保处理跨平台的特性。我建议您尽可能多地依赖流行的第三方框架。他们经历了比你所能完成的更多的修改和测试。显然,这意味着您应该使用jQuery进行所有与JS相关的工作 不幸的是,对于这些浏览器错误,没有什么灵丹妙药,只要你使用JS&HTML,你就会继续遇到这些问题。充其量,你可以编制一份清单,在博客上发布,让社区讨论,并确保你所有的开发人员都了解它们
这就是为什么Flash和SilverLight存在的一个例子,考虑到你花了大量时间开发UI,这似乎是令人震惊的建议,但如果你想摆脱浏览器/操作系统的bug,使用1个公司的交付包是打破99.9%的网络漏洞壁垒的唯一方法。我尝试了window.event.src元素(它只在IE中工作),并将非IE内容放在捕获中,然后将内容绑在我的包中 所有其他浏览器似乎都会抛出window.event.src元素异常,因此我首先使用该行,如果它通过该行,则显然是IE,因此我将IE代码放在那里,如果它出现问题,则显然是一个更符合标准的浏览器,因此我将替代代码放在那里 在使用涉及鼠标事件的服务器端代码动态编写Javascript事件时,这让我省了很多钱 希望这有所帮助,它为您提供了一种无需服务器端检测就可以支持多个具有不同代码的浏览器的方法 信不信由你,有些jQuery(和其他库)函数并不适用于所有浏览器 不管你是否相信jQuery(以及 其他库)函数不起作用 在所有浏览器上 当然,如果您与IE5或NN4相关,jQuery可能不是最佳选择。否则,你就不会有问题了。 我对一个巨大的站点使用jQuery,我对库没有任何问题。我有插件的问题,但这是一个不同的故事。
顺便说一句,我的文件中只有不到10行纯js。如果你学会了高效地使用jquery,你就不需要任何js知识(听起来很奇怪,但是……这是我的案例:P)核心jquery函数可以在库中声明它支持的所有浏览器上工作,当你说某些函数不能在所有浏览器上工作时,你能具体点吗?是的,我们使用AJAX.NET+原型,但正在转向AJAX.NET+JQuery。每季度仍然会有一个致命的bug迫使我们重新整理或修补图书馆。我真的很欣赏负面评价,但如果我能有一个解释的话,那就更好了