在编写新的javascript重型网站时,您编写了哪些订单或网络浏览器?
我可以看到这些可能的订单,但我不确定我最喜欢哪个:
首先编写一个代码并使其运行良好,然后开始使用其他代码进行测试并修复错误.
这将允许最快速的开发(至少使用Firefox),但我从经验中了解到,调试IE会立即进行这么多工作可能会很痛苦!
两者的代码同时.换句话说,对于每个新功能,请确保它在继续之前适用于两个浏览器.
这似乎实际上需要更多的时间,所以也许在Firefox中做几个功能然后转移到IE来修补它们.
你们都做了什么?
编辑1:在这里回答几个答案:@JQuery用法:出于某种原因,我并没有期待这种回应,但是,现在这似乎是压倒性的接受答案,我想我应该告诉大家一个关于我的应用程序细节的更多信息.这实际上是我开始提出另一个问题的DynWeb,而且正在开发中,很多重要的代码似乎要求我使用document.whatever()而不是我能找到的任何JQuery或Prototype函数.具体来说,当动态导入更改CSS时,我必须使用类似于:
var cssid = document.all ? 'rules' : 'cssRules'; //found this to take care of IE and Firefox document.styleSheets[sheetIndex][cssid][cssRule].style[element] = value;
我希望将来我不得不继续使用JQuery或Prototype目前不支持的这种原始编码.因此,虽然我通常会接受JQuery作为答案,但我不能因为它不是这个特定webapp的解决方案.
@Wedge和bigmattyh:由于webapp应该构建其他webapps,部分标准是它所构建的任何东西在我支持的任何浏览器中看起来和功能都相同(现在我正在考虑Firefox和IE7/8 atm,也许更多以后).因此,这是一个更有趣(也更复杂)的问题; 您是否有任何针对特定故障区域(css实体,特定javascript陷阱和差异等)的网站,参考或见解以及如何避免它们?我几乎可以肯定,我将不得不拥有某种isIE
变量,只是根据它执行不同的操作,但我想尽可能地避免它.
感谢您的投入到目前为止!我将在今天剩下的时间里保持开放状态,看看其他人可能会说些什么,并会在今晚的某个时候接受答复.
这是一个棘手的问题.在我看来,你需要按以下顺序工作:
1:符合标准
这使您最接近于在每个浏览器中工作,而无需针对每个浏览器进行测试.此外,只要制作精良且符合标准,您就可以获得网站应该与任何新浏览器一起使用的巨大优势(Chrome就是一个很好的例子).它还使您可以更轻松地调整您的网站以在特定浏览器中工作,因为流行的浏览器偏离标准合规性的方式是众所周知的.
2:支持最常用的浏览器(适用于您的站点)
请仔细注意互联网上浏览器使用情况的细分与您网站上浏览器使用情况的区别.在整个互联网上,IE浏览器是最受欢迎的浏览器,其中Firefox紧随其后,Safari,Opera和Chrome占据了大部分其余部分.但是,您网站访问者的受众特征可以将这些数字颠倒过来.在迎合技术精湛人群的网站上,firefox成为IE浏览器的主流浏览器是很常见的.
3:根据需要支持其他浏览器
您需要非常清楚地知道浏览器兼容性是您网站的运营成本这一事实,您需要决定绘制线的位置.根据您网站的目的和业务模式,可能只支持最流行的浏览器,甚至是其中的一部分浏览器.另一方面,支持Sun下的所有内容(包括IE5)可能是一个至关重要的业务问题.如果您认为成本/效益比太高而不能证明它是合理的,那么可以有意识地决定不完全支持每个浏览器.实际上,互联网上许多最受欢迎的网站在老式和小众浏览器中都不能很好地运行.虽然您应该努力使您的网站在最不受欢迎的浏览器中仍然可用,即使存在严重的外观或可用性问题.
FireFox首先是IE.如果它在FireFox中工作,它更有可能在其他非IE浏览器中工作,IE有时需要特殊的魔法.
使用jQuery并一次完成所有操作.