我想从ajax调用中填充jQuery菜单,该调用从db中检索菜单。由于<li>
项不会显示在视图源html中,而是添加到jQuery ready函数中的DOM中,搜索引擎会将其视为html?他们是否看到空的菜单结构(即浏览器源)或他们是否看到填充的li项目?我的猜测(和希望)是后者。
答案 0 :(得分:2)
搜索引擎通常在抓取页面时不执行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和雅虎也会采用这些标准:http://searchengineland.com/bing-now-supports-googles-crawlable-ajax-standard-84149