当我使用网络时,我经常通过弹出窗口报告运行时错误(通常是javascript)。这可能会使许多其他优秀网站的用户体验真正令人不满意,也让我想知道我无法访问哪些功能。
为什么这是一个常见的问题?这是缺乏测试还是浏览器兼容性问题?可以采取哪些措施来减少这类问题?
我显然没有选中“显示每个脚本错误的通知”。
答案 0 :(得分:1)
我把它归结为缺乏测试。
答案 1 :(得分:1)
它有很多问题。
答案 2 :(得分:0)
在JavaScript中很容易出错。直到最近,Aptana还没有很多用于编码JavaScript的好工具。没有语法检查或编译的好处,小的输入错误可以使它成为页面。除此之外,有时候在一个浏览器中正常工作的代码会导致另一个浏览器出错。例如,我看到一个jQuery插件在IE中不起作用,但在其他所有浏览器中都没问题。结果是没有'var'关键字声明的变量。 Firefox和Safari都没关系,IE不是,所以编写代码的人甚至不知道这是一个问题。
答案 3 :(得分:0)
是的,问题通常是测试。大多数认真的开发人员会尝试在许多浏览器中测试他们的网页,但实际上有很多浏览器和版本,所以你无法真正测试它们。
我通常在使用Opera和Firefox进行设计时进行测试,而我使用Mac的同事也在Safari中进行了测试;然后不时启动一个Vista盒子(我正在运行linux和IE浏览器的Linux只是不可靠复制所有奇怪的IE行为)并在IE上测试它(通常是7和8 beta)。我建议任何Web开发人员不使用IE进行设计!错误最多的网站显然是“为IE设计的”,因为它们几乎不能在其他浏览器中运行并且会出现更多错误。如果您使用标准进行设计并使用相对标准的兼容浏览器(如Opera,Firefox和Safari)进行测试,然后使用conditional comments为IE添加可怕的黑客攻击(尽管它是非标准且专有的,但幸运的是,正确地认为是通过真正的浏览器进行表达,这样你就不会破坏工作代码)你遇到的问题就更少了。
错误的另一个原因是,一个使用框架设计用于解决浏览器差异,并且作为副作用,或者可能仅仅是因为一个错误,在某些浏览器中弹出错误消息。我当然没有时间修复框架只是为了删除错误信息,除非我能解决问题并且它基本上无论如何都要工作,我必须忽略错误信息,可能会提交报告并希望它将被修复下一个版本(甚至更好的希望IE突然而且神奇地停止存在:)