<分区>
我正在构建一个非常简单的网站,其中包含几个不同的部分,例如“关于我们”、“图片”和“联系方式”。
我想知道哪个更有效(更好的性能和更短的响应时间):
1.使用 Javascript 操作 DOM 并在客户单击菜单中的其中一项(“关于我们”、“联系方式”等)或...时更改主要部分的内容
2.为我希望网站拥有的这 4 或 5 个部分中的每一个创建一个新页面(不同的 HTML 和 CSS 文件)?
提前致谢!
<分区>
我正在构建一个非常简单的网站,其中包含几个不同的部分,例如“关于我们”、“图片”和“联系方式”。
我想知道哪个更有效(更好的性能和更短的响应时间):
1.使用 Javascript 操作 DOM 并在客户单击菜单中的其中一项(“关于我们”、“联系方式”等)或...时更改主要部分的内容
2.为我希望网站拥有的这 4 或 5 个部分中的每一个创建一个新页面(不同的 HTML 和 CSS 文件)?
提前致谢!
最佳答案
对于这样的决定,这就是为什么像 Google Polymer 这样的前端框架, AngularJs , React等被创建。
显然,页面更改(如 2. 中所建议)将比 1 慢得多,因为:
但是,尽管 1 看起来像是一个吸引人的设计选择,但执行未优化的 dom 操作(通过 jQuery)实际上可能会进一步损害性能,因为您会引入大量的颠簸和不必要的中间步骤。
像 React 这样的框架,通过模拟一个虚拟 DOM 来处理这个问题,其中:
现代网络组件框架(如 Polymer、x-tag)通过使用声明性 html 语法将数据绑定(bind)到 HTML/JS 行为。优化工作:
O(n)
方法相比,这导致 O(1)
选择速度关于javascript - 通过操作 DOM w 更改内容。 Javascript 与创建新的 HTML/CSS 页面 : which is more efficient?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43187272/
相关文章:
javascript - ES6 Promise/Typescript 和 Bluebird Promise
javascript - 如果以空格开头或结尾,则正则表达式匹配
javascript - jQuery 动画背景颜色在 IE 中不起作用
jquery - 切换时 Bootstrap 导航栏折叠是白色的
html - 当3个div没有空间时并排放置3个div,如何只替换第三个?
javascript - 单击事件后输入值内保留 2 位小数
javascript - 如何使用 css 或 javascript 来实现