jquery - 动态填充的菜单对搜索引擎的可见性

标签 jquery menu search-engine

我想通过 ajax 调用填充 jQuery 菜单,该调用从数据库检索菜单。自 <li>项目不会显示在查看源 html 中,而是在 jQuery 就绪函数中添加到 DOM 中,搜索引擎将什么视为 html?他们看到的是空菜单结构(即浏览器源代码)还是看到填充的 li 项目?我的猜测(也是希望)是后者。

最佳答案

搜索引擎在抓取页面时通常不会执行JavaScript代码。因此我不相信你的菜单会出现在 DOM 中。

另一种选择可能是在页面加载时将菜单实际呈现为无序列表,但使用 display:none 设置列表样式,以便访问者看不到它,而是搜索引擎将会。

尝试使用这些工具之一查看您的网站,这将(有效)模拟搜索引擎抓取。

http://support.google.com/webmasters/bin/answer.py?hl=en&answer=158587

http://www.delorie.com/web/lynxview.html

http://www.webconfs.com/search-engine-spider-simulator.php

[编辑]

实际上,如果您遵循以下标准,Google 确实为他们的机器人提供了一种解决方法来抓取 AJAX 内容:https://developers.google.com/webmasters/ajax-crawling/docs/getting-started

Bing 和 Yahoo 似乎也采用了这些标准:http://searchengineland.com/bing-now-supports-googles-crawlable-ajax-standard-84149

关于jquery - 动态填充的菜单对搜索引擎的可见性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12443519/

相关文章:

jquery - 我怎样才能告诉javascript在最大宽度之后执行

css - 垂直菜单 Bootstrap 中的自动更改位置子菜单

java - 渗透器在 Elasticsearch 中的含义/作用是什么?

elasticsearch - ElasticSearch多字同义词

image - 反向图片搜索图片保护

javascript - 仅加载部分段落文本的 div

jquery - 动画箭头指针

javascript - 单击 <a> 文本以检查输入

html - 我希望将鼠标悬停在该子菜单项上后在右侧显示另一个(二级)子菜单

css - 无法在 CSS 菜单中控制带有百分比的高度