最近,不少在烁空学有所成的老学员问我:“在ASP.Net网站开发中,如何让Ajax页面让搜索引擎收录到?”
众所周知,在AJAX中所有onClick动作直接触发javascript事件,页面上显示的数据或许根本就不会在HTML中出现,所以搜索引擎很难知道你这个页面的具体内容,也就无法真正收录。
现在,我给大家介绍一个简单的办法,让你在使用AJAX的同时,也能兼顾到搜索引擎的“感受”。
------------- 传统的Ajax方案.htm -------------
<html>
<head>
<script>
function orz6()
{
document.getElementById("orz6.com").innerHTML="大家好,欢迎来到 http://www.orz6.net!(假设文章比较长,此处省略掉2000个字)";
}
</script>
</head>
<a href="#" _fcksavedurl=""#"" onClick="orz6()">繁体字,火星文</a>
<div id="orz6.com"></div>
</html>
代码分析:从上面的代码中,可以看到href的指向是“#”,这样在搜索引擎中是无法抓取到文章的具体内容。
------------- 兼顾搜索引擎的方案.htm -------------
<html>
<head>
<script>
function orz6()
{
document.getElementById("orz6.com").innerHTML="大家好,欢迎来到 http://www.socut.com!(假设文章比较长,此处省略掉2000个字)";
}
</script>
</head>
<a href="http://www.orz6.com/fantizi.aspx" onClick="orz6();return false;">繁体字,火星文</a>
<div id="orz6.com"></div>
</html>
代码分析:经过我改良后,href直接指向一个存在的页面,主要来用显示文章的具体内容。当然,这个页面我们要专门做出来,主要是为了方便搜索引擎的收录。细心的话,你会发现onClick事件后面,多了一句 return false ,这样是为了用户在使用AJAX功能时防止页面转换。
研究总结一下,使用第二个方案既能完整的发挥Ajax的魅力,也可以完全兼顾到搜索引擎的抓取,尽可能避免访客的流失。
(转载请注明:烁空 强少爷)