js简单实现京东的电梯导航

目录

css代码

html代码

js代码

完整代码

效果图:


思路:首先先搭建好结构,在写css样式

        由于京东本身一开始是看不见下拉的导航,就把这导航一开始用固定定位,并使其完全不显           示页面,用top的值为-100%,

        js,给窗口设置窗口滚动事件,根据页面被卷去的尺寸document.documentElement.scrollTop的值来判断,下拉导航什么时候出现,就设置其top值为0,不满足时保持原样。

css代码

  *{
            padding: 0;
            margin: 0;
        }
        .header {
            height: 80px;
            background-color: bisque;
        }

        .search {
            width: 1120px;
            height: 100px;
            margin: 0 auto;
            background-color: rgb(67, 165, 42);
        }
/* 导航区 */

        .daohang {
            height: 50px;
            background-color: pink;
            border-bottom: 5px solid red;
            transition: all 1s;
            /* 设置固定定位,位置为 -100%*/
            position: fixed;
            top: -100%;
            width: 100%;

        }

        .main {
            width: 1120px;
            height: 3000px;
            background-color: darkcyan;
            margin: 0 auto;
        }

        .box {
            width: 1120px;
            height: 100%;
            background-color: white;
        
            margin: 0 auto;
        }

        .left img {
            width: 125px;
            height: 40px;
        }

      .left{
        float: left;
        margin-right: 30px;
      }
      .right{
        float: left;
      }
      input{
        width: 500px;
        height: 28px;
        outline: none;
        border: none;
        float: left;
        /* background-color: aquamarine; */
       padding-left: 10px;
      }
      button{
        width: 60px;
        height: 30px;
        outline: none;
        border: none;
        float: right;
        color: white;
    
        background-color: rgb(225, 36, 26);
      }
      .s{
        width: 574px;
        height: 30px;
        border: 2px solid rgb(226, 35, 26);
      }
   .s{
    margin-top: 10px;
   }

html代码

    <div class="wrapper">
        <div class="header"></div>

        <div class="daohang">
            <div class="box">
                <div class="left">
                    <img src="./images/jindong.png" alt="">

                </div>
                <div class="right">
                    <div class="s">
                        <input type="text" placeholder="飞利浦电动牙刷"><button>搜索</button>
                    </div>

                </div>
            </div>

        </div>
        <div class="search"></div>
        <div class="main"></div>
    </div>

js代码

 const daohang=document.querySelector('.daohang')
        const head=document.querySelector('.header')
        //设置窗口滚动事件
        window.addEventListener('scroll',function(){
            //如果页面被卷去的尺寸大于800,就显示下拉导航,否则继续保持原样
            if(document.documentElement.scrollTop>800){
                daohang.style.top=0
            }else{
               daohang.style.top='-100%'
            }
        })

完整代码

<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
    <style>
        *{
            padding: 0;
            margin: 0;
        }
        .header {
            height: 80px;
            background-color: bisque;
        }

        .search {
            width: 1120px;
            height: 100px;
            margin: 0 auto;
            background-color: rgb(67, 165, 42);
        }
/* 导航区 */

        .daohang {
            height: 50px;
            background-color: pink;
            border-bottom: 5px solid red;
            transition: all 1s;
            /* 设置固定定位,位置为 -100%*/
            position: fixed;
            top: -100%;
            width: 100%;

        }

        .main {
            width: 1120px;
            height: 3000px;
            background-color: darkcyan;
            margin: 0 auto;
        }

        .box {
            width: 1120px;
            height: 100%;
            background-color: white;
        
            margin: 0 auto;
        }

        .left img {
            width: 125px;
            height: 40px;
        }

      .left{
        float: left;
        margin-right: 30px;
      }
      .right{
        float: left;
      }
      input{
        width: 500px;
        height: 28px;
        outline: none;
        border: none;
        float: left;
        /* background-color: aquamarine; */
       padding-left: 10px;
      }
      button{
        width: 60px;
        height: 30px;
        outline: none;
        border: none;
        float: right;
        color: white;
    
        background-color: rgb(225, 36, 26);
      }
      .s{
        width: 574px;
        height: 30px;
        border: 2px solid rgb(226, 35, 26);
      }
   .s{
    margin-top: 10px;
   }

    </style>
</head>

<body>
    <div class="wrapper">
        <div class="header"></div>

        <div class="daohang">
            <div class="box">
                <div class="left">
                    <img src="./images/jindong.png" alt="">

                </div>
                <div class="right">
                    <div class="s">
                        <input type="text" placeholder="飞利浦电动牙刷"><button>搜索</button>
                    </div>

                </div>
            </div>

        </div>
        <div class="search"></div>
        <div class="main"></div>
    </div>
    <script>
        const daohang=document.querySelector('.daohang')
        const head=document.querySelector('.header')
        //设置窗口滚动事件
        window.addEventListener('scroll',function(){
            //如果页面被卷去的尺寸大于800,就显示下拉导航,否则继续保持原样
            if(document.documentElement.scrollTop>800){
                daohang.style.top=0
            }else{
               daohang.style.top='-100%'
            }
        })
    </script>
</body>

</html>

效果图:

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mfbz.cn/a/184616.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

视频服务网关的三大部署(二)

视频网关是软硬一体的一款产品&#xff0c;可提供多协议&#xff08;RTSP/ONVIF/GB28181/海康ISUP/EHOME/大华、海康SDK等&#xff09;的设备视频接入、采集、处理、存储和分发等服务&#xff0c; 配合视频网关云管理平台&#xff0c;可广泛应用于安防监控、智能检测、智慧园区…

Jmeter 压测保姆级入门教程

1、Jmeter本地安装 1.1、下载安装 软件下载地址&#xff1a; https://mirrors.tuna.tsinghua.edu.cn/apache/jmeter/binaries/ 选择一个压缩包下载即可 然后解压缩后进入bin目录直接执行命令jmeter即可启动 1.2 修改语言 默认是英文的&#xff0c;修改中文&#xff0c;点击…

JoySSL OV证书

JoySSL OV证书全称为Organization Validation SSL证书&#xff0c;属于组织验证型SSL证书。它是一种增强型的SSL证书&#xff0c;不仅能够提供基本的数据加密功能&#xff0c;还能提供更高级别的安全保障。通过验证申请者身份的方式&#xff0c;确保了用户访问的网站是由合法的…

精益生产中的周转箱优势:提升效率与质量的得力利器

在当今竞争激烈的制造业中&#xff0c;企业追求高效生产和卓越质量是至关重要的。精益生产理念提供了一套有效的工具和方法&#xff0c;其中周转箱作为一个关键的组成部分&#xff0c;在优化生产流程、提高效率和质量方面发挥着重要作用。下面谈谈精益生产中的周转箱优势&#…

测试设备的选型

随着科技的不断发展和进步&#xff0c;各行各业都在积极地进行产业升级和转型。在这个过程中&#xff0c;各种测试设备发挥着不可或缺的作用。如何选择合适的测试设备&#xff0c;成为了企业生产过程中必须面对的重要问题。本文将探讨测试设备的选型&#xff0c;为企业提供一些…

roseha for windows 11+oracle 11g部署过程

文章目录 一、环境准备关闭防火墙配置hosts共享存储准备 二、部署步骤1.主机A、B安装数据库软件2.主机A进行数据库实例创建3.主机B创建数据库4.安装配置roseha软件 一、环境准备 windows server 2019 oracle 11.2.0.3 EE roseha for windows 11 5个IP地址&#xff1a;2心跳、3…

【开源】基于JAVA的衣物搭配系统

项目编号&#xff1a; S 016 &#xff0c;文末获取源码。 \color{red}{项目编号&#xff1a;S016&#xff0c;文末获取源码。} 项目编号&#xff1a;S016&#xff0c;文末获取源码。 目录 一、摘要1.1 项目介绍1.2 项目录屏 二、研究内容2.1 衣物档案模块2.2 衣物搭配模块2.3 衣…

Zookeeper 集群中是怎样选举leader的

zookeeper集群中服务器被划分为以下四种状态&#xff1a; LOOKING&#xff1a;寻找Leader状态。处于该状态的服务器会认为集群中没有Leader&#xff0c;需要进行Leader选举&#xff1b;FOLLOWING&#xff1a;跟随着状态&#xff0c;说明当前服务器角色为Follower&#xff1b;LE…

Python用爬虫ip抓取数据为啥还被限制ip?

今天遇到一个奇怪的事情&#xff0c;使用python爬取一个网站&#xff0c;但是频繁出现网络请求错误&#xff0c;之后使用了爬虫ip&#xff0c;一样会显示错误代码。一筹莫展之下&#xff0c;我对现在的IP进行在线测试&#xff0c;发现IP质量很差。后来我总结了以下几点原因。 P…

实时LCM的ImgPilot搭建部署

ImgPilot是具有实时潜在一致性模型&#xff08;LCM&#xff09;功能的图像试点 下载源码 GitHub - leptonai/imgpilot: Image pilot with the power of Real-Time Latent Consistency Modelhttps://github.com/leptonai/imgpilot安装前端web cd imgpilot npm install 安装…

opencv-使用 Haar 分类器进行面部检测

Haar 分类器是一种用于对象检测的方法&#xff0c;最常见的应用之一是面部检测。Haar 分类器基于Haar-like 特征&#xff0c;这些特征可以通过计算图像中的积分图来高效地计算。 在OpenCV中&#xff0c;Haar 分类器被广泛用于面部检测。以下是一个简单的使用OpenCV进行面部检测…

我的ros2机器人整体设置

树莓派---------上位机-----------不用安装vscode stm32---------下位机------------安装micro_ros---------不用安装vscode Windows笔记本电脑----------工作平台------安装vscode--------安装STM32CubeMX-----安装KEIL ARM visual studio code 只需要安装在工作平台上面--即…

【Go语言从入门到实战】反射编程、Unsafe篇

反射编程 reflect.TypeOf vs reflect.ValueOf func TestTypeAndValue(t *testing.T) {var a int64 10t.Log(reflect.TypeOf(a), reflect.ValueOf(a))t.Log(reflect.ValueOf(a).Type()) }判断类型 - Kind() 当我们需要对反射回来的类型做判断时&#xff0c;Go 语言内置了一个…

uniapp高德、百度、腾讯地图配置 SHA1

uniapp高德、百度、腾讯地图配置 SHA1 当winr弹出cmd弹框后输入 keytool -list -v -keystore debug.keystore 显示keytool 不是内部或外部命令&#xff0c;也不是可运行的程序或批处理文件。可以先看看是否有下载jdk且配置了环境变量&#xff0c;具体操作如下&#xff1a;keyto…

docker compose搭建渗透测试vulstudy靶场示例

前言 渗透测试&#xff08;Penetration test&#xff09;即网络安全工程师/安全测试工程师/渗透测试工程师通过模拟黑客&#xff0c;在合法授权范围内&#xff0c;通过信息搜集、漏洞挖掘、权限提升等行为&#xff0c;对目标对象进行安全测试&#xff08;或攻击&#xff09;&am…

关于鸿蒙网络请求的问题

https://developer.huawei.com/consumer/cn/forum/topic/0204136145853212268?fid0102683795438680754 鸿蒙OS 代码 import http from ohos.net.http;export const httpUtils (url: string, data: any) > {return new Promise((resolve, reject) > {let httpRequest …

都2023年了,为什么大家还都在吹捧 Python?

2023 年&#xff0c;Python 还可学吗&#xff1f; 答案当然是可。 近些年间&#xff0c;Python 的火热有目共睹&#xff0c;作为一种功能强大的高级编程语言&#xff0c;在 2018 年的时候它的流行程度就得到了大幅提高。 图源&#xff1a;Stack Overflow 网站编程语言浏览量统…

Jmeter基础和概念

JMeter 介绍&#xff1a; 一个非常优秀的开源的性能测试工具。 优点&#xff1a;你用着用着就会发现它的重多优点&#xff0c;当然不足点也会呈现出来。 从性能工具的原理划分&#xff1a; Jmeter工具和其他性能工具在原理上完全一致&#xff0c;工具包含4个部分&#xff1a; …

linux进程调度(一)-进程概述

一、什么是进程 进程是指计算机已运行的程序。程序本身只是指令、数据及其组织形式的描述。进程就是一个程序的执行实例&#xff0c;也就是正在执行的程序。在linux操作系统的中&#xff0c;进程就是一个担当分配系统资源CPU时间、内存的实体。进程控制的主要功能是对系统中的所…

接口测试学习路线

接口测试分为两种&#xff1a; 测试外部接口&#xff1a;系统和外部系统之间的接口 如&#xff1a;电商网站&#xff1a;支付宝支付 测试内部接口&#xff1a;系统内部的模块之间的联调&#xff0c;或者子系统之间的数据交互 测试重点&#xff1a;测试接口参数传递的正确性&…