0

所以我将有许多页面,其中包含一堆文本,JS 和 CSS 文件将转换为彩色网页。我注意到文本通常会很长,并且由于会有很多网页,我应该减小文件大小。另外,因为我不想破坏文件质量,所以我决定我的 JS 文件将获取文本并从中制作网页。 旁注:我想做的是制作教程页面,所以我将使用 JS 生成每个教程页面上的很多东西,比如课程列表,以减小文件大小。

我注意到元数据(<head>内容)通常会占用一些 JS 可以生成的空间,所以我想,我为什么不直接用 JS 生成呢? 但是随之而来的问题是某些浏览器可能无法解析它,或者解析它可能很慢。所以我在 Stack Overflow 上问:

JavaScript 是否应该生成元数据(可能几乎是整个页面,比如<head>完全删除标签并使用 JS 生成它)?

4

1 回答 1

1

这取决于您想要的结果。

谷歌已经改进了它的 SEO 机制,以便在索引之前呈现您的页面,请参见此处:

https://developers.google.com/search/docs/guides/javascript-seo-basics

然而,其他机器人可能不会这样做,例如阅读 Open Graph 元标签的社交媒体爬虫(如 facebook 或 twitter)或其他搜索引擎(如百度)。

如果机器人不呈现您的文档,则 javascript 不会被执行并且您的元不存在。

此外,如果您的初始文档不包含样式表或其他 CDN,则客户端需要更长的时间。想象一下这个过程:

带头

  1. 获取文档
  2. 获取资源
  3. 渲染内容

无头

  1. 获取文档
  2. 渲染内容
  3. 获取资源
  4. 重新渲染

这太简单了,但它证明了我的观点。

选择:

如果您的内容如此动态,您可能会考虑服务器端渲染 (SSR) 或预渲染

您将以编程方式构建页面并存储/提供所有页面,或者根据请求在服务器端构建它们。

https://developers.google.com/web/updates/2019/02/rendering-on-the-web

于 2020-12-06T20:58:07.783 回答