通过HTML+CSS+Javascript实现向下滚动滚动条出现导航栏并出现回到顶部按钮点击按钮回到顶部(一)...

简介: 通过HTML+CSS+Javascript实现向下滚动滚动条出现导航栏并出现回到顶部按钮点击按钮回到顶部(一)...

回到顶部实例一


效果:默认隐藏导航栏,当滚动条滚到超过300px后导航栏和按钮出现,点击回到顶部按钮回到顶部,并隐藏导航栏和按钮(导航栏和按钮都是固定定位)


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<style>
body {
  margin: 0;
  padding: 0;
  height: 3000px;    /*让滚动条出现*/
}
.DW {
  display: flex;           /*固定定位*/
  justify-content: center;  /*让文字水平居中*/
  align-items: center;      /*让文字垂直居中*/
  width: 100%;
  height: 80px;
  background-color: green;   /*背景颜色绿色*/
  color: aliceblue;
  font-size: 2em;
  transition: top .5s linear;  /*导航栏过渡出现和隐藏*/
  position: fixed;   /* 绝对定位,不管滚动条上下滚动都在相应的位置*/
  top: -80px;        /*隐藏导航栏*/
  left: 0;
}
.goTop {
  width: 50px;
  height: 50px;
  background-color: aquamarine;
  font-size: 20px;
  text-align: center;
  line-height: 25px;
  color: azure;
  position: fixed;    /*固定定位*/
  bottom: 50px;
  right: 50px;
  display: none;   /*隐藏按钮*/
}
  .divTop:hover+.topdhl{  /*隐藏的div触发时生效(兄弟关系) ,*/
        /*.divTop:hover .topdhl  (父子关系)*/
   top: 0px;
   transition: top .5s linear;  /*导航栏过渡出现和隐藏*/
  } 
  .divdhl:hover{        /*导航栏触发时生效*/
  top: 0px;
   transition: top .5s linear;  /*导航栏过渡出现和隐藏*/
    }
  .fusu{
  display: flex;           /*固定定位*/
  width: 100%;
  height: 10px;
  left: 0;
  }
</style>
</head>
<body >
  <div class="fusu divTop"></div>
<div class="DW topdhl divdhl" id="dhl">导航栏</div>
<buttion class="goTop" id="gotop">回到顶部</buttion>
<script>
  //获取导航栏和按量元素
  var topw=document.getElementById("dhl")
  var goTop=document.getElementById("gotop")
  //滚动滚动条触发事件
     window.onscroll=function(){
    //获取滚动条位置
  var jhlheight=document.documentElement.scrollTop||document.body.scrollTop
  //判断滚动条位置
  if(jhlheight>=300){
  topw.style.top="0px"      //显示滚动条
  goTop.style.display="block"  //显示按钮
  }else{
  topw.style.top="-80px"     //隐藏滚动条
  goTop.style.display="none"  //隐藏按钮  
   }
  }
  //点击按钮事件
   goTop.onclick=function(){
  window.scrollTo({     //设置滚动条位置
    top:0,            //回到顶部
    behavior:"smooth"   //平滑过渡
  })
  }  
  </script>
</body>
</html>
相关文章
|
14天前
|
前端开发 JavaScript UED
CSS滚动效果和视差滚动的原理、应用及其对用户体验的影响。从平滑滚动到元素跟随,再到滚动触发动画
本文探讨了CSS滚动效果和视差滚动的原理、应用及其对用户体验的影响。从平滑滚动到元素跟随,再到滚动触发动画,这些效果增强了页面的吸引力和互动性。视差滚动通过不同层次元素的差异化移动,增加了页面的深度感和沉浸感。文章还讨论了实现方法、性能优化及案例分析,旨在为设计师和开发者提供实用指导。
36 7
|
21天前
|
JavaScript 前端开发
CSS3 动画和 JavaScript 动画的性能比较
具体的性能表现还会受到许多因素的影响,如动画的复杂程度、浏览器的性能、设备的硬件条件等。在实际应用中,需要根据具体情况选择合适的动画技术。
|
22天前
|
缓存 前端开发 JavaScript
优化CSS和JavaScript加载
优化CSS和JavaScript加载
|
1月前
|
前端开发 JavaScript 数据处理
CSS 变量的作用域和 JavaScript 变量的作用域有什么不同?
【10月更文挑战第28天】CSS变量和JavaScript变量虽然都有各自的作用域概念,但由于它们所属的语言和应用场景不同,其作用域的定义、范围、覆盖规则以及与其他语言特性的交互方式等方面都存在明显的差异。理解这些差异有助于更好地在Web开发中分别运用它们来实现预期的页面效果和功能逻辑。
|
24天前
|
缓存 前端开发 JavaScript
优化CSS和JavaScript加载
Next.js和Nuxt.js在优化CSS和JavaScript加载方面提供了多种策略和工具。Next.js通过代码拆分、图片优化和特定的CSS/JavaScript优化措施提升性能;Nuxt.js则通过代码分割、懒加载、预渲染静态页面、Webpack配置和服务端缓存来实现优化。两者均能有效提高应用性能。
|
13天前
|
Web App开发 JavaScript 前端开发
高性能的纯Js滚动条美化插件smooth-scrollbar
smooth-scrollbar是一款高性能的纯JavaScript滚动条美化插件。该滚动条为现代浏览器而制作,它具有高性能,自由配置,平滑滚动等特点,支持各种现代桌面浏览器和手机设备。
|
3月前
Twaver-HTML5基础学习(36)是否显示滚动条
本文探讨了在Twaver-HTML5中设置是否显示滚动条的方法,包括横向和纵向滚动条的控制,但遇到了设置不生效的问题,可能与软件版本有关。
37 2
Twaver-HTML5基础学习(36)是否显示滚动条
|
3月前
|
前端开发
Twaver-HTML5基础学习(28)工具条(添加自定义按钮_自定义事件)
这篇文章介绍了如何在Twaver-HTML5中创建工具条,添加自定义按钮,并绑定自定义事件,包括放大、缩小、占满屏幕和重置画布大小的功能。
57 11
用CSS+JavaScript打造网页中的选项卡
用CSS+JavaScript打造网页中的选项卡