广

JavaScript

  • IOS开发
  • android开发
  • PHP编程
  • JavaScript
  • ASP.NET
  • ASP编程
  • JSP编程
  • Java编程
  • 易语言
  • Ruby编程
  • Perl编程
  • AJAX
  • 正则表达式
  • C语言
  • 编程开发

    jQuery实现返回顶部按钮效果

    2018-04-04 08:35:03 次阅读 稿源:互联网
    零七广告

    当用户浏览很长的页面时,可以通过点击页面右下角的“返回顶部”按钮直达页面顶部,以方便用户进行下一步操作。本文将使用jQuery结合CSS实现可以自由定制的各种“返回顶部”的效果。

    实现过程

    当页面滚动时(监听scroll事件),浏览器滚动条处于最顶部时,隐藏“返回顶部”按钮,当滚动条继续向下滚动时,动态计算出当前可视窗口的高度-按钮高度-按钮距浏览器下边缘高度得到的值,如果这个值大于某个特定的数字时,显示“返回顶部”按钮,否则隐藏。然后,当单击“返回顶部”按钮时,其实应该是一个链接,将滚动条滚回浏览器最顶部。在这个过程中,我们可以使用animate来创建动画效果,即返回顶部时有个过渡效果。

    HTML

    本例依赖jQuery库,并且我们将主要的实现过程的javascript代码放入到gotoTop.js中,因此,先要在你需要调用的页面引入这两个js文件。

    1. <script type="text/javascript" src="js/jquery.js"></script> 
    2. <script type="text/javascript" src="js/gotoTop.js"></script> 

    jQuery

    在页面中调用gotoTop()方法。注意在gotoTop.js,我们动态的往body中插入了“返回顶部”按钮,它的class属性默认是.backToTop,当然你也可以将其修改成任意class值,只要不和你的当前页面冲突就行。

    1. $(function(){ 
    2.     $(".backToTop").goToTop(); 
    3.     $(window).bind('scroll resize',function(){ 
    4.         $(".backToTop").goToTop(); 
    5.     }); 
    6. }); 

    上述代码中,页面加载时调用一次goToTop(),当滚动页面或浏览器窗口大小发生变化时也调用goToTop()。

    goToTop()提供了几个主要的参数可配置。

    pageWidth:页面宽度,如960.

    pageWidthJg:按钮和页面的间隔距离,默认为2.

    pageHeightJg:按钮和页面底部的间隔距离,默认为100.

    duration:回到顶部的速度时间,默认为200,单位毫秒,如果设置为0,则返回顶部时不会有动画效果.

    如果要定制按钮不同的外观,需要设置css样式。

    CSS

    本文domo中给出了三个不同风格的“返回顶部”按钮样式,您只需要一张图片,设置对应.backToTop的css即可。

    DEMO1:仿新浪微博。

    1. .backToTop{width:16pxbackground:#dff3fd url(top.gif) no-repeat 0px 5pxpadding:20px 0 4px 
    2. 4pxline-height:16px;-moz-border-radius:2px; -webkit-border-radius:2px; border-radius:2px;} 
    3. a.backToTop:hover{text-decoration:nonecolor:#f60

    DEMO2:仿QQ个人中心。

    1. a.backToTop{width:28pxheight:24pxbackground:#eaeaea url(top.gif) no-repeat -21px 4px;  
    2. text-indent:-999em
    3. a.backToTop:hover{background-position:-21px -19px

    DEMO3:仿天猫商品页。

    1. a.backToTop{width:60pxheight:60pxbackground:url(top.gif) no-repeat -51px 0
    2.  text-indent:-999em
    3. a.backToTop:hover{background-position:-113px 0

    零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。

    零七广告
    零七广告
    零七广告
    零七广告