JavaScript对SEO的影响和解决方法

JavaScript对SEO的影响和解决方法,JavaScript在SEO中是一个很头疼的问题,一方面我们在网页制作中需要使用JavaScript来实现绚丽的特效,而一方面JavaScript又会对搜索引擎的抓取分析造成不好的影响。Google的官方文档中很清楚的说明,如果在html中过多的使用 JavaScript、Cookie、会话 ID、框架、DHTML 或 Flash 等复杂功能会使搜索引擎抓取工具在抓取网站时可能会遇到问题。
 
Google原文:
 
Use a text browser such as Lynx to examine your site, because most search engine spiders see your site much as Lynx would. If fancy features such 
as JavaScript, cookies, session IDs, frames, DHTML, or Flash keep you from seeing all of your site in a text browser, then search engine spiders
 may have trouble crawling your site.
http://www.google.com/support/webmasters/bin/answer.py?answer=35769
 
Google Site Search isn't able to index content contained in JavaScript. The general rule for making sure that a web page can be indexed by Google 
is to ensure that all of the text that needs to be indexed is visible in a text-based browser, or a browser with JavaScript turned off.
http://www.google.com/support/customsearch/bin/answer.py?answer=72366
不仅是Google,yahoo在官方文档中也有类似的强调:
 
尽量使用搜索引擎能够识别的文本信息,避免过多的JavaScript、Cookie、框架、DHTML 或 Flash 等复杂技术。
http://help.cn.yahoo.com/answerpage_2911.html
百度虽然没有明确的说明,但是经过大量的实践,百度也是无法对JavaScript进行识别的。
 
这样就造成了一个问题,网页中过多的JavaScript代码无疑是对搜索引擎分析网页内容增加难度,如果网页中的链接也是有不少 JavaScript组成的话,那么搜索引擎甚至无法顺着链接去抓取网页。这样的话,过多的使用JavaScript就造成了以下的影响:
 
对搜索引擎分析网页内容造成了干扰。
影响关键词密度。
严重妨碍搜索引擎抓取网页。
影响由链接产生的网页权重分布,这一点在 PageRank上通常会有体现。
对抓取和链接权重所造成的影响,还可以用外链来弥补,但是第一第二点却是不容易挽救的。
 
如何在不影响网页效果而又对搜索引擎友好的前提下使用JavaScript,从而不影响SEO效果呢?
绝对避免导航及其他链接使用JavaScript。导航和链接是搜索引擎抓取网页的赖以生存之本,如果搜索引擎无法抓取网页,则代表了网页不会出现在索引结果中,也就无从谈起排名了。
尽量避免对内容使用JavaScript。尤其是与关键词相关部分的内容,应该尽量避免使用JavaScript来展现,否则毫无疑问是要降低关键词密度的。
实在需要使用JavaScript的部分,将这部分JavaScript脚本放在一个或几个.js文件中,这样能够避免干扰到搜索引擎的抓取和分析。
实在不能放在.js文件中的部分JavaScript脚本,将它们放在html代码的底端,< /body>之前,这样使搜索引擎分析网页时最后才会发现它,降低对搜索引擎的干扰。
以上的一些方法是消除JavaScript对搜索引擎的不利影响。其实反过来说,一个事物通常有利也有弊。JavaScript的使用也是这样,不一定使用JavaScript就一定是不好的,在一定程度上去利用JavaScript,反而对SEO有很好的作用,也就是正面的作用。
 
我们有说到搜索引擎无法对JavaScript进行识别(虽然Google目前做到了对少量简单的JavaScript代码做出辨别,但那也应该只是Document write之类的简单代码)。那么换一个角度来说,我们完全可以利用JavaScript来过滤一些垃圾信息。
 
何谓垃圾信息?从SEO的角度来说就是不仅对搜索引擎抓取分析没用,还会对关键词密度造成干扰等不利的信息。通常这些“垃圾”信息包括:广告、版权申明、大量导出链接、与内容不相关的信息等等。我们可以将这些垃圾信息通通扔进一个或数个.js文件中,从而降低对页面实质内容的干扰,提高关键词密度,向搜索引擎展示页面内容的核心。
营销型网站