我正在考虑两种不同的方法来完成使用AJAX显示动态HTML的相同任务。第一种方法是简单地生成HTML服务器端,然后通过它插入。 DOM(jQuery的$()。load()实际上)。第二种方法是生成JSON服务器端,然后使用该数据将元素注入DOM。
我想知道每种方法的优点和缺点,特别是在性能权衡方面。显然,不得不将数据与数据一起发送,这会降低HTTP响应的速度,但是数据需要多大才能使其花费更长的时间来加载?
话虽如此,渲染全新HTML的性能与构建DOM对象并将其注入当前文档相比如何?我有一种直觉,大多数浏览器在渲染新的HTML块时比在一次渲染页面的不同部分时更有效(可能是因为浏览器已经使用了更长时间?我不知道,只是预感) 。不同的浏览器如何比较? (我个人使用Chrome(不用于测试),但我期望在Safari,IE7,IE8和Firefox上使用webapp。)
如果JSON显然是更好的方法,那么什么才是极端的?如何加载索引以获取文档对象,可能是一个简单的页面结构然后从那里使用AJAX和JSON来做其他所有事情?
答案 0 :(得分:0)
您可以查看此视频,了解在现代浏览器中呈现html的问题有多大(事实上很大)。真的,你会为无辜的用户节省数百小时的等待时间。 http://www.youtube.com/watch?v=nCgQDjiotG0
好吧,现在就开玩笑吧。由于速度而切换到json的整个想法对我来说听起来有点极端。不是因为html具有一些技术优势,而是因为在每个Web框架(至少MVC)中从模板生成html都很容易。这就是Web框架的功能。在Javascript中将数据放入模板听起来有点棘手。不必要的并发症。