首页 > 编程语言 >app直播源码,利用原生JS实现回到顶部以及吸顶效果

app直播源码,利用原生JS实现回到顶部以及吸顶效果

时间:2023-02-27 14:22:35浏览次数:48  
标签:顶部 app oSt 距离 JS 滚动条 源码 nav 吸顶

app直播源码,利用原生JS实现回到顶部以及吸顶效果

 

 <style>
        .box1{
            width: 1200px;
            height: 800px;
           
            margin: 0 auto;
        }
        .box2{
            width: 1200px;
            height: 800px;
            background-color:palegreen;
            margin: 0 auto;
        }
        /* 设置了box1 box2的高度都为800px 是为了页面出现滚动条 */
        .gotop {
            position: fixed;
            bottom: 50px;
            right: 5px;
            width: 70px;
            height: 50px;
            text-align: center;
            line-height: 50px;
            color: #fff;
            background-color: aquamarine;
        }
        /* gotop去顶部 固定定位 定在底部  */
 
        .nav {
            width: 1200px;
            height: 30px;
            background-color: yellow;
            position: fixed;
            top: 0;
            left: 50%;
            transform: translate(-50%);
            display: none;
        }
        /* nav头部的导航栏 固定定位 同时让它隐藏 */
    </style>
</head>
<body>
    <div class="box1"></div>
    <div class="box2"></div>
    <div class="gotop">回到顶部</div>
    <div class="nav"></div>
</body>
<script>
    //实现回到顶部效果
    var oGo = document.querySelector(".gotop");//获取去顶部的元素
    var timer = null;//把定时器置为空
    oGo.onclick = function () {//点击事件 
        clearInterval(timer);//清除定时器
        timer = setInterval(function () {
            document.documentElement.scrollTop -= 10;//滚动条每次距离顶部的距离减10
            var oSt = document.documentElement.scrollTop;//获取滚动条距离顶部的距离
            console.log(oSt);
            if (oSt === 0) {
                clearInterval(timer);//如果距离顶部距离为0 清除定时器
            }
        }, 20);
    }
    //实现吸顶效果
    window.onscroll = function () {//滚动监听事件
        var oNav = document.querySelector(".nav");//获取导航nav里元素
        var oSt = document.documentElement.scrollTop;//获取滚动条距离顶部的距离
        if (oSt >= 100) {
            oNav.style.display = "block";//如果滚动条距离顶部的距离大于100 显示导航nav
        } else {
            oNav.style.display = "none";//否则不显示
        }
    }
</script>

思路:

1.回到顶部

 1.需要出现滚动条(设置了box1 box2的高度都为800px ,也可以只设置一个盒子,高度设置大一点,出现滚动条即可)。

 

2.回到顶部的固定定位设置(利用固定定位 定在底部)。

 

 3.设置点击事件onclick(点击回到顶部触发事件)。

 

 4.设置定时器可以改变滚动条距离顶部的距离(还需要进行判断,如果距离顶部距离为0时,要清除定时器,不然会一直调用,占用内存)。

 

2.吸顶效果

1.利用滚动监听事件 window.onscroll。

 

  2.设置一个nav导航的盒子,固定定位 ,同时让它隐藏。

 

3.获取滚动条距离顶部的距离,然后进行判断。如果滚动条距离顶部的距离大于100 显示导航nav,否则都是隐藏不显示(这里的高度可以自己设置)。

 以上就是 app直播源码,利用原生JS实现回到顶部以及吸顶效果,更多内容欢迎关注之后的文章

 

标签:顶部,app,oSt,距离,JS,滚动条,源码,nav,吸顶
From: https://www.cnblogs.com/yunbaomengnan/p/17159491.html

相关文章

  • netapp fas2220更换硬盘的记录
    1、买来新的硬盘,出现broken的问题如下:fas2220>volstatus-rAggregateaggr0(online,raid_dp,reconstruct)(blockchecksums) Plex/aggr0/plex0(online,normal,......
  • 基于jeecgboot的flowable为uniapp适配的流程页面调整
       为了满足在uniapp上也能进行webview的流程页面操作与显示,需要对流程页面,特别是record/index.vue进行修改与适配。   一、对各个内容的宽带进行调整主要是样式......
  • js实战-添加指定行以及review知识
    资料来源于:B站尚硅谷JavaWeb教程(全新技术栈,全程实战),本人才疏学浅,记录笔记以供日后回顾视频链接reviewcss与js相关知识1.CSS1)CSS的角色:页面显示的美观风格......
  • vue源码分析-动态组件
    前面花了两节的内容介绍了组件,从组件的原理讲到组件的应用,包括异步组件和函数式组件的实现和使用场景。众所周知,组件是贯穿整个Vue设计理念的东西,并且也是指导我们开发的......
  • vue源码分析-响应式系统(一)
    从这一小节开始,正式进入Vue源码的核心,也是难点之一,响应式系统的构建。这一节将作为分析响应式构建过程源码的入门,主要分为两大块,第一块是针对响应式数据props,methods,da......
  • 推荐一个Dapper扩展CRUD基本操作的开源库
    推荐一个Dapper扩展CRUD基本操作的开源库 在C#众多ORM框架中,Dapper绝对称得上微型ORM之王,Dapper以灵活、性能好而著名,同样也是支持各种数据库,但是对于一些复杂的查询,......
  • uniapp radio 弹出取消后恢复以前的选择
    <view><radio-groupclass="radioBox"@change="radioChange"v-if="hackReset"><labelclass="itemRadiouni-list-celluni-list-cell-pd">......
  • 计算器app(简易版)
    1、不可连续数字运算,只有两个变量2、回退未实现效果:      页面设计<?xmlversion="1.0"encoding="utf-8"?><LinearLayoutxmlns:android="http://schemas......
  • 将后端的application/json的格式数据类型转换成前端需要的类型格式
    前提:后端返回的数据内容但是红框的数据对于前端来说是不正确的数据所以我感觉前端处理这个数据本身这个操作都很傻X但是我尝试进行转换代码如下:得到的数据:点击查......
  • Java应用【三】使用Jackson库进行JSON序列化和反序列化
    如果您觉得本博客的内容对您有所帮助或启发,请关注我的博客,以便第一时间获取最新技术文章和教程。同时,也欢迎您在评论区留言,分享想法和建议。谢谢支持!相关阅读:​​Java应用【......