【发布时间】:2013-10-10 02:59:27
【问题描述】:
目前我正在创建一个完全由 JS 驱动的网站。我根本不使用任何 HTML 页面(索引页面除外)。每个查询都返回 JSON,然后我在 JavaScript 中生成 HTML 并插入到 DOM 中。这样做有什么缺点,而不是创建具有布局结构的 HTML 文件,然后将该文件加载到 DOM 并使用来自 JSON 的新数据更改元素?
编辑: 我所有的页面都加载了 AJAX 调用。但我有这样的结构:
<nav></nav>
<div id="content"></div>
<footer></footer>
基本上,我从不更改 nav 或 footer 元素,它们只在加载 index.html 文件时加载一次。然后在每个页面上单击我向服务器发送一个 AJAX 调用,它以 JSON 格式返回数据,我使用 jQuery 生成 HTML 代码并像这样插入 $('#content').html(content);
创建单独的 HTML 文件,然后例如使用 $('#someID').html(newContent) 使用 JSON 数据更改每个元素,将使用更多代码,并且我需要向服务器发出更多请求来加载此文件,所以我想我可以生成在浏览器中。
编辑2: SEO 不是很重要,因为我的网站需要登录,所以我会在 index.html 文件中创建所有元标记。
【问题讨论】:
-
据我了解,javascript 和 DOM 在这个主题上不是朋友。在我的经验中,我发现在 html 文件中编辑和创建 html 更容易。我喜欢分离我的资源(js 只用于 js,html-files 用于 html 等)
-
你为什么要这样做?
-
你为什么要问这个问题@MikeHometchko?这就是许多单页应用程序的工作方式。
-
@JayC 嗯,不是这样。如果他说“我通过 Javascript/JQ、XAML、XML、处理程序、视图、razor/asp 表单等生成 HTML”,那么我就不会那么怀疑了。
标签: javascript html json dynamic