欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

jquery通过load获取文件的内容并跳到锚点的方法教程

程序员文章站 2023-10-10 19:20:04
本文实例讲述了jquery通过load获取文件的内容并跳到锚点的方法。分享给大家供大家参考。具体分析如下: 昨天在做一个类似于帮助文档型的页面,左边是导航,右边显示的是内容。本来...

本文实例讲述了jquery通过load获取文件的内容并跳到锚点的方法。分享给大家供大家参考。具体分析如下:

昨天在做一个类似于帮助文档型的页面,左边是导航,右边显示的是内容。本来打算右边内容显示区域用iframe来实现,但由于要做iframe的适应高度所以就换了一种方法,使用jquery的ajax中的load方法。

获取远程文件中的内容很容易实现,直接使用jquery的load方法:

$("#content").load("xxx.aspx")

这样很容易将xxx.aspx文件中的内容放在id为content的标签中。现在还要实现的一个效果是:当我获取文件的内容后,要跳到相应的锚点,于是就想到使用jquery的scrolltop,例如我获取文件内容后,要调到id="name"的标签:

$("body,html").animate({scrolltop:$("#name").offset().top});

offset()就是获取匹配元素在当前视口的相对偏移,$("#name").offset().top就是获取id为name的标签在当前视口距顶部的相对偏移。以上代码综合在一块需这样写:

$(function(){
 $("#content").load("xxx.aspx",function(){
  $("body,html").animate({scrolltop:$("#name").offset().top});
 });
})

为了避免点击导航不断的对服务器发送请求,我们可以将每次获取到的数据存储起来。

当然,这个方法只适合不考虑seo优化的页面使用。