javascript——返回顶部

本文介绍了一种网页设计技巧,通过CSS和JavaScript实现动态元素的显示与隐藏,以及利用滚动事件触发页面元素平滑滚动的效果。文章详细阐述了CSS定位属性、定时器和事件监听器的使用方法,旨在提升用户体验。
<!DOCTYPE html>
<html>
<head>
    <title></title>
    <style type="text/css">
        body{
            margin: 0 auto;
        }
        div{
            margin: 0 auto;
            width: 1000px;
            background: #d3d3d3;
        }
        div img{
            margin-left:400px;
            width: 200px;
        }
        a{
            display: none;
            position:fixed; right:65px; bottom:10px;
            width: 45px;
            height: 45px;
            background-image: url("1.jpg");
        }
        a:hover{
            margin-left: 1190px;
            width: 45px;
            height: 45px;
            background-image: url("2.jpg");
        }
    </style>
    <script type="text/javascript">
        window.onload=function(){
            var id=document.getElementById("id");
            var scrollTop=0;
            //定时器
            var time=null;
            //可视区gaodu
            var height1=document.documentElement.clientHeight;
            //--------------------------------
            var isTop=true;
            //滚动就促发
            window.onscroll=function(){
                scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
                //如果大于可视区高度就显示
                if(height1<=scrollTop){
                    id.style.display='block';
                }else{
                    id.style.display='none';
                }
                if(!isTop){
                    clearInterval(time);
                }
                isTop=false;
            }
            //--------------------------------
            id.onclick=function(){
                //设置定时器
                time=setInterval(function(){
                    scrollTop=document.documentElement.scrollTop||document.body.scrollTop;
                    var i=Math.floor(scrollTop/6);
                    document.documentElement.scrollTop=document.body.scrollTop=scrollTop-i;
                    isTop=true;
                    if(scrollTop<6){
                        document.documentElement.scrollTop=document.body.scrollTop=0;
                       //取消定时器
                        clearInterval(time);
                    }
                },30);
            }
        }
    </script>
</head>
<body>
    <div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div>
    <div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div><div>
        <img src="3.jpg">
    </div>
    <a href="javascrpt:;" id="id">
    </a>
</body>

</html>


//----------------------------------------------------------------------------------------------------------

注意点:1.display: none;
            position:fixed; right:65px; bottom:10px;
            width: 45px;
            height: 45px;--位置是固定定居

document.documentElement.scrollTop||document.body.scrollTop;

/可视区gaodu
            var height1=document.documentElement.clientHeight;

time=setInterval(function(){}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值