jquery滚动到指定位置

利用jquery实现页面可视区滚动到指定位置。直接上代码

//滚动到指定位置
  function scrollTo(element,speed) {
    if(!speed){
      speed = 300;
    }
    if(!element){
      $("html,body").animate({scrollTop:0},speed);
    }else{
      if(element.length>0){
        $("html,body").animate({scrollTop:$(element).offset().top-200},speed);
      }
    }
  }

//然后触发某个事件时调用这个函数。
//scrollTo('#comment',300);    写评论功能的时候,滚动到文本域的位置。#comment是文本域ID属性。

offset() 返回或设置匹配元素相对于文档的偏移。上述代码中  -200  的意思是是文本域再向下移动200px,实现此功能主要是scrollTop配合animate动画。

外层元素的高度值是200px,内层元素的高度值是300px。很明显,“外层元素中的内容”高过了“外层元素”本身.当向下拖动滚动条时,有部分内容会隐没在“外层元素的上边界”之外,scrollTop就等于这部分“不可见的内容”的高度。初始状态下,“内层元素的上边界”和“外层元素的上边界”重合,没有任何内容超过“外层元素的上边界”,此时scrollTop属性的值为0。当向下拖动滚动块时,超过“外层元素的上边界”的内容会逐渐增多,scrollTop值就等于这些超出部分的高度。参考:scrollTop讲解

$("html,body")是什么意思呢?暂时没明白。

猜你喜欢

转载自www.cnblogs.com/bneglect/p/10996247.html