【问题标题】:Will google index content declared in an inline javascript variable?谷歌索引内容是否在内联 javascript 变量中声明?
【发布时间】:2013-10-14 18:52:11
【问题描述】:

我似乎无法找到明确的答案。 如果我的页面如下所示:

<html>
<head>
  <script>
    var mypets = [ 
        { 'type': 'dog', 'name':'rover' }, 
        { 'type': 'cat', 'name':'kitty' }];
    $('#btnShowEm').click(function() { $('#emptyAtFirst').text(mypets[0].name); });
 </script>
</head>
<body>
  <div id='emptyAtFirst'></div>
  <button id='btnShowEm">ShowEm</button>
</body>
<html>

即使“mypets”数据一开始并未显示在 html 中,Google 是否会将其编入索引?现实世界的页面在类似的 javascript 对象中声明了许多内容,并显示其中的一些内容以响应用户操作;我想知道我是否需要做更多的事情才能使页面根据所有内容进行索引,而不仅仅是在 javascript 内容运行之前在 html 中可见的内容。

【问题讨论】:

  • 是的,您应该提供网页的纯 HTML 版本,以便获得更好的评价。该机器人会读取您的所有页面并为其编制索引,但这些数据将如何显示在任何搜索结果中则是另一回事(以及 Google 的商业机密)
  • @StevenV 非常相似的链接,但这些链接似乎都不是完全重复的。据我所知,OP 是在询问实际的 JavaScript 是否被索引,而不是用 JavaScript 操作的 HTML。不过我可能弄错了,措辞有点模糊。
  • 没错;我想知道javascript是否会被索引。如果我将它们全部公开,实际页面将有数千个 div,JS 一次只公开几个,以免使浏览器陷入困境。另一方面,gbot 对巨大的文档产生了影响,所以我现在的计划是让服务器在检测到 googlebot 用户代理时公开 HTML 中的所有元素。
  • 虽然从技术的角度来看,我赞赏你非常优雅和聪明,但我建议不要使用这种策略。这属于 SEO 伪装的范畴,而且风险很大,因为如果 google 检测到您向 googlebot 搜索蜘蛛提供的内容与向您的网站访问者提供的内容不同,您可能会在 SERP 中被禁止或严重处罚。如果我是你,我不会这样做。请参阅此处的提示 #10:stonetemple.com/articles/top-10-bad-SEO-ideas.shtml

标签: javascript googlebot


【解决方案1】:

我不建议您依赖存储在 JavaScript 中的内容来推动您的 SEO 工作。

Google has said “如果 JavaScript、cookie、会话 ID、框架、DHTML 或 Flash 等花哨的功能使您无法在文本浏览器中查看您的所有网站,那么搜索引擎蜘蛛可能无法抓取您的网站。 "这就是为什么 Google 建议使用 Lynx 来预览您的网站,看看他们的蜘蛛是如何看待它的。

尽管几乎可以肯定 Google 确实阅读了你所有的 JS,但我怀疑它们是否会从 JavaScript 代码中给你同样多(如果有的话)排名汁。最好将重要内容放在 HTML 中。也许HTML5 data-attributes 对搜索引擎更有利。如果是这种情况,为了最大限度地提高搜索引擎读取它的可能性,您可能希望在初始页面加载时将所有这些内容包含在 HTML 中,而不是在页面加载后通过 JavaScript 填充它。

延伸阅读here.

【讨论】:

    【解决方案2】:

    没有。 Google 不索引 &lt;script&gt;&lt;style&gt; 内容,甚至不包含嵌套标签。

    测试页 — HTMLXHTML,.

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2010-11-23
      • 2022-12-03
      • 1970-01-01
      • 1970-01-01
      • 2017-06-09
      • 1970-01-01
      • 2022-11-04
      相关资源
      最近更新 更多