0

这是一个示例页面:

<html>
    <head>
        <title>WEB PAGE TITLE</title>
        <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
        <script src="script.js" type="text/javascript"></script>
    </head>
</html>

像这样写出正文会更好(在性能方面):

<body>
    <div id="element"></div>
</body>

或者让 jQuery 这样做:

$(document).ready(){
   $('html').append('<body />');
   $('body').append('<div id="element" />');
};
4

4 回答 4

4

直接编写 HTML 总是 100% 更好,不仅仅是出于性能原因。

严格来说性能,如果您直接编写正文,则加载速度要快得多。如果您使用 JavaScript(jQuery 等),则在读取大部分 HTML 之前不会对其进行处理,等等等等,它会(相对)慢得多。

此外,如果您使用 JavaScript 编写该内容,如果用户禁用了 JavaScript,他们将什么也看不到。不酷。你总是想走渐进式增强路线,这基本上是在没有 JavaScript 的情况下让一切都在基本级别上工作,而不是在可用时添加 JavaScript 来增强该功能。

于 2012-12-11T18:23:25.350 回答
1

标记方法会更快。你不仅不需要解析 javascript,浏览器也不需要等到 ready() 事件被触发。

于 2012-12-11T18:23:29.657 回答
1

当然,如果没有 JavaScript/JQuery,渲染速度会更快。数据也少了一点。

于 2012-12-11T18:24:08.983 回答
1

这里不一定有一个“正确”的答案,但我会权衡一下。

避免在 JavaScript 中构建 HTML,除非您的业务模型需要它(例如构建 DOM 元素以响应 Ajax 查询)。主要原因是支持/修改 JavaSCript 中内置的 HTML 更加困难(通常)。另外,如果您的用户出于某种原因禁用了 JavaScript 怎么办?在这种情况下,让您的网站尽可能优雅地降级是一件好事,如果您在 JS 中构建您的核心结构,您的网站将是非操作的。

除此之外,一个简单的 DOM 结构将比内置的 JS 结构更快地呈现。

干杯

于 2012-12-11T18:24:11.443 回答