如何在jQuery中使用锚元素向上或向下滚动页面

  • Post category:jquery

可通过以下五个步骤,在jQuery中使用锚元素向上或向下滚动页面:

第一步:给锚元素添加HTML标签

锚元素的HTML标签样式类似下面这样:

<a href="#" class="scroll-top"></a>
<a href="#" class="scroll-bottom"></a>

其中“scroll-top”和“scroll-bottom”是自定义的class名称。

第二步:添加jQuery代码

为了让锚元素接收到单击事件,需要使用下面的jQuery代码:

$('.scroll-top').on('click', function(){
  $('html, body').animate({scrollTop:0}, 800);
});

$('.scroll-bottom').on('click', function(){
  $('html, body').animate({scrollTop:$(document).height()}, 800);
});

这里使用了“animate”函数和“scrollTop”属性来实现向上或向下滚动页面。其中,“scrollTop:0”表示向上滚动到页面顶部,而“scrollTop:$(document).height()”表示向下滚动到页面底部。

第三步:调整CSS位置

接下来,需要将锚元素的CSS位置进行调整。这里我们使用CSS样式表来实现:

.scroll-top {
  position: fixed;
  right: 20px;
  bottom: 20px;
  width: 56px;
  height: 56px;
  background-color: #333;
  background-image: url('img/scroll-top.png');
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 50%;
  opacity: 0.5;
  z-index: 999;
  cursor: pointer;
}

.scroll-bottom {
  position: fixed;
  right: 20px;
  bottom: 90px;
  width: 56px;
  height: 56px;
  background-color: #333;
  background-image: url('img/scroll-bottom.png');
  background-repeat: no-repeat;
  background-position: center;
  border-radius: 50%;
  opacity: 0.5;
  z-index: 999;
  cursor: pointer;
}

.scroll-top:hover,
.scroll-bottom:hover {
  opacity: 1;
}

这里设置了固定定位、“right”和“bottom”属性来调整锚元素的位置。同时需要设置宽度、高度、背景颜色、图片、圆角、透明度等CSS样式。

第四步:添加图标

接下来,需要为锚元素添加图标。这里我们使用了“background-image”属性来设置图标,同时还需要使用CSS样式表来调整“background-position”属性。

第五步:注册滚动事件

为了实现更好的用户体验,可以为页面注册滚动事件。这里通过下面的jQuery代码来实现:

$(window).scroll(function(){
  if ($(this).scrollTop() > 100) {
    $('.scroll-top').fadeIn();
  } else {
    $('.scroll-top').fadeOut();
  }

  if($(this).scrollTop() < $(document).height() - $(window).height() - 100) {
    $('.scroll-bottom').fadeIn();
  } else {
    $('.scroll-bottom').fadeOut();
  }
});

这里使用了“scroll”事件和“fadeIn”、“fadeOut”函数来实现当用户滚动页面时,根据滚动位置自动显示或隐藏锚元素。

示例1:向上滚动页面

这个示例演示如何使用“scroll-top”锚元素来向上滚动页面。首先,需要在页面中添加“scroll-top”锚元素,然后通过下面的jQuery代码来实现:

$('.scroll-top').on('click', function(){
  $('html, body').animate({scrollTop:0}, 800);
});

这里使用了“animate”函数和“scrollTop”属性来实现向上滚动页面。其中,“scrollTop:0”表示向上滚动到页面顶部。演示效果可以参见下面的链接:

示例2:向下滚动页面

这个示例演示如何使用“scroll-bottom”锚元素来向下滚动页面。首先,需要在页面中添加“scroll-bottom”锚元素,然后通过下面的jQuery代码来实现:

$('.scroll-bottom').on('click', function(){
  $('html, body').animate({scrollTop:$(document).height()}, 800);
});

这里使用了“animate”函数和“scrollTop”属性来实现向下滚动页面。其中,“scrollTop:$(document).height()”表示向下滚动到页面底部。演示效果可以参见下面的链接: