zoukankan      html  css  js  c++  java
  • 页面跳到顶部的方法

    页面跳到顶部的方法

    一、使用锚点链接

    毫无疑问,使用锚点链接是一种简单的返回顶部的功能实现。该实现主要在页面顶部放置一个指定名称的锚点链接,然后我们在页面下方放置一个返回到该锚点的链接,用户点击该链接即可返回到该锚点所在的顶部位置。

    示例代码如下:

    <!-- 定义一个名称为top的锚点链接 -->

    <a name="top"></a>

    <!-- 这里是网页主体内容,此处省略 -->


    <!-- 返回页面顶部top锚点的链接 -->
    <a href="#top">返回顶部</a>

    值得注意的是,在现代浏览器中,如果浏览器找不到指定的锚点(例如top),浏览器将会尝试跳转到id为top的HTML元素的起始位置。因此,我们也可以在头部放置一个id为top的HTML元素,遗憾的是,并不是所有的浏览器——尤其是某些浏览器的旧版本,都兼容这种行为。

    二、使用js函数scrollTo()

    当然,我们还可以利用JavaScript为我们提供的函数scrollTo(x, y)来实现返回到页面顶部的功能。scrollTo函数可以滚动到指定坐标(x, y)处的内容。我们将坐标设定为(0, 0)即可起到返回顶部的作用。

    <a href="javascript:scrollTo(0,0);">返回顶部</a>

    三、使用js操作DOM样式

    此外,我们还可以使用js将body或html等元素的scrollTop属性设置为0,即可滚动到页面的顶部。我们一般使用jQuery来实现上述代码。

    // 以下三种方式均可实现返回页面顶部

    $(window).scrollTop(0);

    $('body').scrollTop(0);

    $('html').scrollTop(0);

    此外,我们还可以使用jQuery的动画效果函数animate()来实现平滑滚动到页面顶部的动画效果。

    // 在500毫秒内平滑滚动到页面顶部

    $('body').animate( {scrollTop: 0}, 500);

    四、本方式是渐进式返回顶部,要好看一些,代码如下:


    function pageScroll() { 
    window.scrollBy(0,-10); 
    scrolldelay = setTimeout('pageScroll()',100); 

    <a href="pageScroll();">返回顶部</a>

    这样就会动态返回顶部,不过虽然返回到顶部但是代码仍在运行,还需要在pageScroll函数加一句给停止掉。

    复制代码 代码如下:if(document.documentElement.scrollTop==0) clearTimeout(scrolldelay);


    五、简单的静态返回顶部,用js模拟滚动效果上滑至顶部
     
    js代码

        function pageScroll(){
            //把内容滚动指定的像素数(第一个参数向右滚动的像素数,第二个参数向下滚动的像素数)
            window.scrollBy(0,-100);
            //延时递归调用,模拟滚动向上效果
            scrolldelay = setTimeout('pageScroll()',100);
            //获取scrollTop值,声明了DTD的标准网页取document.documentElement.scrollTop,
        否则取document.body.scrollTop;因为二者只有一个会生效,另一个就恒为0,所以取和值
        可以得到网页的真正的scrollTop值
            var sTop=document.documentElement.scrollTop+document.body.scrollTop;
            //判断当页面到达顶部,取消延时代码(否则页面滚动到顶部会无法再向下正常浏览页面)
            if(sTop==0) clearTimeout(scrolldelay);
        }

    html代码

        <a onclick="pageScroll()">返回顶部</a>

    缺点:滚动效果不平滑,且在页面很长时点击返回顶部,未向上到达页面顶部无法再正常浏览页面;

    同上依旧是静态固定于页面底部,不一定能曝光在用户面前。

  • 相关阅读:
    JavaScript伪协议
    http-equiv
    js 获取鼠标坐标
    js daily
    Swift中属性Properties
    Swift中类和结构体
    Swift和Java在枚举方面的比较
    Swift特有语法:闭包
    Swift和Java在函数(method/方法)方面的比较
    Swift和Java控制流比较
  • 原文地址:https://www.cnblogs.com/huchaoheng/p/5711864.html
Copyright © 2011-2022 走看看