【问题标题】:JavaScript and SEO. How Should I reconcile them? [closed]JavaScript 和 SEO。我应该如何调和它们? [关闭]
【发布时间】:2010-09-13 03:10:03
【问题描述】:

根据一些 SEO 专家和渐进增强 (PE) 等理论,即使禁用了 JS,页面内容也应该适当地呈现给用户。我完全同意这一点。

这是我的情况,在我们客户的“关于我们”页面上,有一个 div 列出了他们的公司活动。由于空间和其他考虑,他们隐藏了一些带有 JS 的事件列表以及 CSS 元素 display:none

到目前为止,有两件事真的让我很害怕。

  • 一、CSS元素-display:none。我的经验表明,这在 SEO 方面非常糟糕。
  • 二,禁用JavaScript。禁用浏览器的 JavaScript 后,我​​根本看不到隐藏的事件列表。显然,没有 JS,learn more 标签是没有功能的。这种情况肯定有悖于PE理论和SEO专家的警告。

除了这两件吓人的事情,我还有一个疑惑。

我使用谷歌网站管理员工具来获取这个页面,它显示了所有的隐藏事件列表。如果谷歌机器人在禁用 JS 的情况下抓取我的网站,它如何获取那些隐藏的内容?或者如果它能够获取那些隐藏的内容,是否意味着PE理论已经过时并且那些专家是错误的?

我现在该怎么办?感谢您的宝贵时间。

【问题讨论】:

标签: javascript css seo


【解决方案1】:

首先,display:nonenot universally considered 是 SEO 失礼;爬虫仍然可以“爬取”该文本;关于它是否会影响声誉,或者他们是否会以同等权重对其进行索引,存在相互矛盾的理论。

PE 理论和 SEO/可查找性理论重叠,但它们的“兴趣”有时会有所不同;理论上你可以做一些糟糕的 PE 而不是糟糕的 SEO。

如果禁用 JavaScript,PE 理论说“您应该能够在功能上使用所有站点”。但是,如果默认值为 display:none; 并通过 JavaScript 变为 display: block;,则这不是 PE,因为 JS 禁用程序永远无法查看您的内容(尽管爬虫可能)。

更好的做法是将display:(not none) 设为默认值,并设置 display: none;通过 JavaScript。这样一来,JS 禁用者可以看到和使用内容(即使是以一种视觉上不吸引人的方式),并且启用者会以您想要的方式体验它

这涵盖了你的两个方面,因为爬虫无法判断 JS 是否被用来隐藏某些东西,以防与 display:none; 相关联的 SEO 消极性

【讨论】:

    【解决方案2】:

    当您“查看源代码”时,蜘蛛基本上会看到您所看到的内容。如果您使用 CSS 或 JS 隐藏您的内容,蜘蛛很有可能仍然能够看到它们,因为它们主要查看原始 HTML 源(内容被声明的地方)。但是,如果您使用 JS(通过 AJAX 等)加载您的内容,那么蜘蛛程序将无法看到您的内容,因为它们通常不执行 javascript。

    只要在 HTML 源代码中描述了所有内容,那么大部分情况下您应该没问题。

    【讨论】:

      【解决方案3】:

      正如其他人所回答的那样,抓取工具会看到您网页的原始来源。虽然在某些情况下“display:none”可能对你不利,但我目前的想法是,如果你不滥用它(将不相关的关键字塞入你的页面),它可能没问题。

      也就是说,要进行渐进式增强,您应该确保页面显示所有内容并禁用 javascript。使用 javascript 隐藏和重新配置 ondomready 的东西。

      这样,如果我关闭了 javascript,我仍然可以看到所有内容。如果我是搜索引擎,我不必担心在您的 CSS 中看到“display:none”。如果我是另外 99% 的用户,javascript 会及时隐藏一些内容,所以我可以享受你在 javascript 中做的任何事情的性感。

      【讨论】:

        猜你喜欢
        • 2013-12-07
        • 2019-01-15
        • 2011-07-04
        • 2017-06-16
        • 2011-05-05
        • 2011-09-02
        • 1970-01-01
        • 2017-10-28
        • 1970-01-01
        相关资源
        最近更新 更多