通过HTML+CSS+JavaScript实现鼠标移动到页面顶部导航栏出现,如果移出导航栏3秒又隐藏起来,而且不受滚动条影响(二)...

简介: 通过HTML+CSS+JavaScript实现鼠标移动到页面顶部导航栏出现,如果移出导航栏3秒又隐藏起来,而且不受滚动条影响(二)...

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


<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>JavaScript_test</title>
<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;   /*隐藏按钮*/
}
.fusu {
  position: fixed;    /*固定定位*/
  width: 100%;
  height: 10px;
  left: 0;
  top: 0;
}
</style>
</head>
<body>
<div class="fusu divTop" id="divtop"></div>
<div class="DW topdhl divdhl" id="dhl">导航栏</div>
<buttion class="goTop" id="gotop">回到顶部</buttion>
<script>
  //获取导航栏、按量、顶部div的元素
  var topw=document.getElementById("dhl")
  var goTop=document.getElementById("gotop")
  var divTop=document.getElementById("divtop")
   //滚动滚动条触发事件
     window.onscroll=function(){
    //获取滚动条位置
  var jhlheight=document.documentElement.scrollTop||document.body.scrollTop
  //判断滚动条位置
  if(jhlheight>=300){
  goTop.style.display="block"  //显示按钮
  }else{
  goTop.style.display="none"  //隐藏按钮  
   }
  }
  //点击按钮事件
   goTop.onclick=function(){
  window.scrollTo({     //设置滚动条位置
    top:0,            //回到顶部
    behavior:"smooth"   //平滑过渡
  })  
  }  
    //鼠标移入div后触发的事件
  var ss=divTop.onmouseover=function(){
  var tar=topw.style.top="0px"  
  } 
    //鼠标移入导航栏触发的事件
    topw.onmouseover=function(){
  var tar=topw.style.top="0px"
  } 
  //鼠标移出导航栏后触发的事件
  topw.onmouseout=function(){
    //定时器函数
  setTimeout(function(){
    topw.style.top="-80px"
     },3000)    
  }   
  </script>
</body>
</html>
相关文章
|
1月前
|
前端开发 JavaScript 搜索推荐
打造个人博客网站:从零开始的HTML和CSS之旅
【9月更文挑战第32天】在这个数字化的时代,拥有一个个人博客不仅是展示自我的平台,也是技术交流的桥梁。本文将引导初学者理解并实现一个简单的个人博客网站的搭建,涵盖HTML的基础结构、CSS样式的美化技巧以及如何将两者结合来制作一个完整的网页。通过这篇文章,你将学会如何从零开始构建自己的网络空间,并在互联网世界留下你的足迹。
|
3天前
|
JSON 移动开发 数据格式
html5+css3+js移动端带歌词音乐播放器代码
音乐播放器特效是一款html5+css3+js制作的手机移动端音乐播放器代码,带歌词显示。包括支持单曲循环,歌词显示,歌曲搜索,音量控制,列表循环等功能。利用json获取音乐歌单和歌词,基于html5 audio属性手机音乐播放器代码。
28 6
|
23天前
|
Web App开发 前端开发 JavaScript
JavaScript动态渲染页面爬取——Selenium的使用(一)
JavaScript动态渲染页面爬取——Selenium的使用(一)
31 4
|
23天前
|
Web App开发 数据采集 JavaScript
JavaScript动态渲染页面爬取——Selenium的使用(二)
JavaScript动态渲染页面爬取——Selenium的使用(二)
38 2
|
1月前
|
前端开发 JavaScript 搜索推荐
打造个人博客网站:从零开始的HTML与CSS之旅
【9月更文挑战第31天】在这个数字时代,拥有一个个人博客网站是展示自我、分享知识和连接世界的重要方式。本文将引导你通过简单的HTML和CSS知识,一步步构建起你的在线空间。无论你是编程新手还是希望通过实践加深理解,这篇文章都将是你的理想指南。我们将探索基本概念,实现页面布局,并点缀以个性化样式,最终将静态页面转变为动态交互式网站。准备好了吗?让我们开始吧!
|
2月前
|
前端开发 数据安全/隐私保护 容器
HTML+CSS 水滴登录页
该代码实现了一个创意的水滴登录页面,包含一个水滴形状的登录框与两个按钮(忘记密码和注册)。登录框包括用户名、密码输入框及登录按钮。页面设计独特,采用渐变色与动态效果,增强了交互性和视觉美感。以下为关键实现步骤: - 重置默认样式。 - 设置页面背景颜色和尺寸。 - 定义登录表单容器的布局、位置和尺寸。 - 设置登录表单内容样式,包括3D效果和过渡动画。 - 创建伪元素增强水滴效果。 - 设定输入框容器和输入框样式。 - 为提交按钮、忘记密码和注册按钮设定特定样式,并添加悬停效果。
|
22天前
|
JavaScript 前端开发 API
JavaScript全屏,监听页面是否全屏
JavaScript全屏,监听页面是否全屏
41 0
|
24天前
|
前端开发 JavaScript
JavaScript动态渲染页面爬取——CSS位置偏移反爬案例分析与爬取实战
JavaScript动态渲染页面爬取——CSS位置偏移反爬案例分析与爬取实战
30 0
|
24天前
|
存储 JSON JavaScript
JavaScript动态渲染页面爬取——Pyppeteer爬取实战
JavaScript动态渲染页面爬取——Pyppeteer爬取实战
30 0
|
4月前
|
JavaScript Java 测试技术
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
基于springboot+vue.js+uniapp的客户关系管理系统附带文章源码部署视频讲解等
85 2