正如标题所示,我正在寻找一个最佳实践问题的答案,
使用JQuery或PHP构造DOM元素更好吗。后端或前端。
为了给出一些上下文,我的PHP循环构建这样的页面元素;
<div id='content'>
<div id='el1'></div>
<div id='el2'></div>
<div id='el3'></div>
<div id='el4'></div>
</div>
我的Jquery脚本像这样重新排列DOM;
<div id='content'>
<div class='wrapper'>
<div id='el1'></div>
<div id='el2'></div>
</div>
<div class='wrapper'>
<div id='el3'></div>
<div id='el4'></div>
</div>
</div>
我正在做的实际任务很小,几乎和这个例子一样微不足道。重写PHP有什么好处吗?
谢谢,凸轮
如果没有需要满足的DB或用户输入相关条件,只需使用PHP即可如果jQuery一开始就知道标记应该是什么,那么用jQuery更改DOM是没有意义的。你会任意延长HTML生成管道。
如果有选择,我会选择使用jQuery。这减轻了服务器的负载,让用户看到某些事情正在立即发生,而不是等待服务器完成它的工作。
当使用jQuery构建DOM元素时,我会使用以下内容http://mustache.github.com/或http://documentcloud.github.com/underscore/
这些库将清理您的jQuery代码,并将它们很好地分离。
我在我开发的几个系统上做的任何基准测试(小的,每秒不超过几十次点击),用php构建DOM都要快得多
我的直觉告诉我,在大量JS的大型网站上,在服务器端构建并缓存它仍然会更快
我的答案是采用最简单的解决方案。对于这样一个小的解决方案,只需在一个地方完成所有操作。否则,如果出现问题,您需要调试两个位置。
我还记得上次我有一个学生写php代码,它基于数组生成javascript。javascript将在客户端生成网页。这是一个一团糟的意大利面条代码,他整个学期的大部分时间都在努力找出代码。
保持简单。。。
对于这么小的东西,只要你不担心你的用户禁用了JS,差异就非常小。