首页 | 互联网 | IT动态 | IT培训 | Cisco | Windows | Linux | Java | .Net | Oracle | 软件测试 | C/C++ | 嵌入式开发 | 存储世界 | 服务器
网络设备 | IDC | 安全 | 求职招聘 | 数字网校 | 网页设计 | 平面设计 | 技术专题 | 电子书下载 | 教学视频 | 源码下载 | 搜索 | 博客 | 论坛
ASP | ASP.NET | JSP | PHP | AJAX | XML | Java script | HTML/CSS | 服务器类
各大城市软件开发培训、软件人才免费咨询热线:400-700-5807
 您现在的位置: 中国IT实验室 >> WEB开发 >> AJAX学习教程 >> 正文
探讨:利用AJAX技术提高搜索引擎排名

描述 嵌入在你的web页面中的导航元素能够降低你的搜索引擎评价排名并且降低你的网站的响应性能。本文作者想同你一起探讨如何使用AJAX技术来解决这两个问题。

  许多设计良好的web站点都包含大量的与实际内容相联系的可导航信息。用于导航的HTML标记能影响你的搜索引擎评价,而且能够改进访问者的页面下载体验感。在本文中,你会看到如何使用AJAX来创建更为集中的更快速加载的web页面。

  一、 分离导航与内容

  让我们使用一个例子作为开始。请考虑你现在阅读的文章,它有下列一些内容:

  · 一个其上有一些预定义的到Informit的各个部分的链接的页眉。

  · 在页眉下有一行,把本文放到Informit的目录结构之中(实际上,这是唯一的与目录相关的可导航元素)。

  · 一个位于右首的侧栏,其中有一些连接到流行文章和推荐内容的链接。

  · 一个页脚,还有一些永远不会改变的链接。

  上面的"混合"很可能会影响搜索引擎索引你的数据的方式:

  · 因为搜索引擎不能区别内容与导航文本,所以它们会把它们在你的页面中找到的一切进行索引。既然目录中的关键字与不相关的可导航关键字混合在一起,那么内容之间的关联大大减少。一些搜索引擎宣称,它们能够在被搜索到的页面(例如,固定的页眉和页脚)中发现重复的文本并且删除它们。但是,不要依赖这种可能性;即使它们实现了这种技术,也很可能不会一直可靠。

  · web页面中的外向链接影响你的内容的页面评价。尽管这可能提高流行的文章的评价排名(因为许多页面都链接到它们),但是所有的页面都链接到的内容(例如,隐私策略)通常得到最高的页面评价-这可能不是你一直关心的问题。在我的一个web站点中,最高的评价页面是用于把消息发送到web管理员的表单-而不是你想让用户首先在Google上找到的内容。

  注意

  即使你不使用站点地图,你也可以通过Google的站点地图用户接口来了解一下你的页面的页面排名情况。

  添加到一个web页面的可导航元素还可能影响使用低速互联网存取的用户,而如果web页面不使用DIV元素(Informit使用之)而使用表格时更是如此。在这种情况中,在把它显示给用户之前,整个表格必须被加载到一些web浏览器中。

  传统地,web设计者一般都使用框架集或通过构建整套的导航架构(广泛使用JavaScript代码)来实现导航与内容的分离。这两条途径都存在其缺点;因此,许多大型网站避免使用框架集就不足为奇了。

  借助于在AJAX框架中使用的技术,你可以为这一问题提供一种方案:

  · 每一个web页面仅包含可导航元素和实际内容的占位符。

  · 在web页面通过嵌入式框架(IFRAME)或使用XmlHttpRequest对象加载后,再装载这些可导航元素。

  · 然后,可导航元素的内容被合并到web页面内容中,从而产生一个不嵌入任何帧的干净的页面。

  在使用这种方法重新设计你的web页面之前,你需要考虑下列问题:

  · 搜索引擎仅将看到初始的web页面。你必须确保,该页面中包含到相关页面或到一个网站地图的链接。Informit网站中文章页眉上方的导航线和在页面的文章信息部分中的链接正好可以较好地实现这一目的。

  · 在他们的浏览器中禁止调用JavaScript的访问者将具有与搜索引擎相同的页面视图。你必须确保他们有受限的视图不会给你的网站的功能造成较大影响。

  · 你可能想在你的页面上保留一些静态内容。例如,Informit标识和版权信息必须一直显示给所有的访问者。

  当你确定好应该把你的导航结构哪些部分依附到页面上以及哪些部分应该与之分开之后,你就可以开始下一步骤了。

  二、 设计你的Web页面

  实现分离内容和导航的第一步是,在web页面上创建将插入可导航元素的占位符。对于每一个可导航元素的连续区域,你应该创建一个具有唯一id的独立DIV元素;这样以来,以后你可以在你的JavaScript代码中标识它。为了防止过度晃动,在创作页面期间,目录上方或右边的DIV元素的尺寸应该调整到非常接近你的可导航元素的实际大小;这样,当你使用希望的HTML代码来代替它们时内容就不会移动位置。为此,一种最巧妙的方法是把一个空的适当大小的DIV元素插入到该占位符处。

  对于Informit网站来说,其页面结构已经是良好设计的,且DIV元素已经非常到位,如图1所示。


图1一篇Informit文章的页面结构

  你仅需要从可导航DIV元素中删除内容并且插入一个空框,页眉将会出现在这里(为了简短起见,我们将忽略把公司标识和版权信息嵌入到每一个页面中的讨论)。下面是相应的代码:

<div id="header">
<div style="height: 100px; width: 100%"></div>
</div>
<div id="contentArticle">
<div id="firstCol">
... article content ....
</div>
<div id="secondCol" ></div>
</div>
<div id="footer"></div>


  注意

  如果你的web页面使用表格来实现所希望的页面布局,那么请不要把表格单元格重用作占位符;而把DIV元素放到表格单元格内比较好一些。


  已经被从web页面中删除的可导航的元素必须被重新创建为独立的页面。你应该使用静态HTML文件来表达静态内容(这将允许缓冲内容,不管你使用什么样的web服务器)和在加载它们的web页面上创建显示基于动态元素的服务器端脚本。对于Informit来说,每一个web页面都有唯一一个文章标识符(在URL中的"p="参数);因此,你需要创建一个能够接受文章标识符并创建右边的栏目的服务器端脚本。在大多数情况中,你可以重用创建嵌入的可导航元素的服务器端代码。

  在重新设计这些web页面后,接下来,你就可以实现本方案中的AJAX部分了。与通常一样,你可以使用嵌入式框架(IFRAME元素)工作,也可以选用一个XmlHttpRequest对象。

[1] [2] [3] 下一页

中国IT教育热线咨询
相关文章
ajax制作网页右下角弹出提示效果
Ajax,未来的WebServices?
在c#中如何调用ajax进行开发
Ajax的错误处理机制探讨
AJAX能够取代桌面应用程序吗?
最新文章
·PHP正则表达式从url中取得域名
·php设计模式介绍之迭代器模式
·简单学习php遇到的主要问题
·asp根据表单自动生成sql语句的函
·雅虎选项卡特效
 文章评论

 精彩友情推荐
·Asp源码 PHP源码
·CGI源码 JSP源码
·建站书籍教程
·服务器软件 .net源码
·建站工具软件
·IDC资讯大全
·机房品质万里行
·IDC托管必备知识
·全国IDC报价
·网站推广优化
ASP.NET ASP PHP JSP
·如何使dbgrid中不同的值显示不同颜色08-03
·extjs ComboBox联动下拉菜单示例08-01
·漫谈.Net开发关于命名空间和目录划分07-31
·在Silverlight应用程序中操作Cookie07-28
·带附加条件的NewID()用法(downmoon)07-28
·对自定义路由进行单元测试07-28
·javascript实现yield07-28
·在ASP.NET中使用Google Maps07-28
·Sql Server2005 实现Oracle10g的hash表分区功07-28
·asp.net get set用法07-26
·Asp.net 控件开发—数据回传07-26
·php设计模式介绍之迭代器模式08-02
·简单学习php遇到的主要问题08-02
·asp根据表单自动生成sql语句的函数08-02
·教你优化你的ASP程序03-07
·asp去除HTML标记的三个实用函数03-07
·ASP添加验证码的解决方法03-07
·ASP通用文章分页函数:非记录集分页03-07
·ASP教程基础:十天学会ASP第三天03-07
·ASP教程基础:十天学会ASP第二天03-07
·ASP教程基础:十天学会ASP第一天03-07
·能够生成google xml地图的asp源码03-06
·Linux系统下让PHP提高性能的工具APC05-06
·一个完整、安全的PHP用户登录系统11-14
·Apache+PHP+MySQL建立数据库驱动的动态网站08-24
·用SSH与PHP相连接 确保数据传输的安全性08-23
·PHP5手动最简安装方法08-03
·PHP程序加速探索之服务器负载测试07-11
·完全讲解PHP+MySQL的分页显示示例分析05-30
·用Suhosin加强PHP脚本语言安全性05-26
·初学入门 PHP 和 MySQL05-17
·传奇的诞生 PHP三位创始人简介05-10
·大型系统上PHP令人不爽的九大原因05-10
·ASP.NET和PHP、JSP究竟学哪个?07-30
·JAVA (Jsp)利用Google的Translate开发API07-29
·由Servlet获得FacesContext及ManagedBeans07-24
·用JOTM向Servlet中添加事务07-18
·用servlet生成验证码07-16
·JSP/Servlet伪静态网页实现07-08
·JSP和Servlet的关系浅谈06-15
·妙用异步Servlet扩展AJAX应用程序06-11
·servlet生成验证码图片06-02
·java.servlet.Filter的应用05-30
·Java程序员必看--扩展鼠标右键菜单功能05-13
  培训中心
人才交流中心 技术交流中心
  ITLab技术交流平台: