当前位置: 首页 > news >正文

【菜单下拉效果】基于jquery实现二级菜单下拉效果(附完整源码下载)

Js菜单下拉特效目录

  • 🍔涉及知识
  • 🥤写在前面
  • 实现效果
  • 🍧一、涉及知识
  • 🌳二、具体实现
    • 2.1 搭建一级菜单
    • 2.2 搭建二级菜单项
    • 2.3 引入js文件
    • 2.4 构建CSS文件
  • 🐋三、源码获取
  • 🌅 作者寄语

🍔涉及知识

html菜单下拉特效,js实现二级菜单下拉效果,Js如何实现菜单下拉效果,js特效二级菜单实现,基于jquery实现菜单下拉功能,菜单下拉特效如何实现。


讲专栏✨:web 菜单特效
🌝关于我🌝:一个持续输出型博主,爱分享,喜技术,期待关注与交流!
🧡公众号🧡:《IT黄大大》更多分享抢先看;
🌈说主题🌈:影视,明星,家乡,旅游,个人,美食,校园,商城,运动,特效等
🍗谈技术🍗:HTML+CSS,HTML+CSS+JS,Java+数据库,vue项目,aspx,jsp等
📝讲软件📝:vscode,dreamweaver,hbuilder,sublime text,eclipse,idea,VS等;


声明:原创于博主《IT黄大大》,欢迎大家转载,烦请转前注明出处,感谢大家的支持,更多专栏可关注文尾唯心宫众号《IT黄大大》

🥤写在前面

五一也过了,可以安心的继续整理web知识分享给大家了。在很多人的作业里面估计都会涉及到JavaScript效果啥的,近两天就遇到一个粉丝和我说能不能出一些关于特效类的分享,这不我就整理了一下,顺便说一下它实现的原理,希望能够给到大家帮助。
其实我最喜欢的还是和大家先分享效果,觉得可以的继续往下看,觉得不咋的也不用浪费时间,毕竟时间这玩意儿无价。

实现效果

在这里插入图片描述

🍧一、涉及知识

当然这个是基于jquery来做的,主要是我们要搭建一个dom节点,然后针对dom节点我们得制作出对应的菜单项,菜单我们一般能看到的是一级,那么要想做一个二级菜单效果,我们必须得在一级菜单下面添加二级菜单标签,当然这个标签不局限于div还是ul li之类的,只要是盒子元素都可以做的。
其核心在于css的样式设置及js代码的制作实现;
CSS这块主要用到了相对绝对定位,针对要下拉的菜单我们不能直接显示,默认是隐藏属性,且得相对一级菜单left为0;
Js这块我们的核心应用在于其鼠标移入事件的添加,只要我们将我们的鼠标事件设置好即可,比如鼠标移入时候我们让隐藏的元素展示,鼠标移出后再隐藏,从而达到一个动态的效果。

🌳二、具体实现

2.1 搭建一级菜单

首先我们得创建好一个dom用于存放菜单的盒子,然后将一级菜单展示出来,也就是如下:

 <div id="menu"><ul><li>首页</li><li>学校</li><li>家乡</li><li>IT黄大大</li></ul></div>

这样的话我们搭建好了我们的基础的div了,接下来就是在li里面再搭建一个ul li这样的话就是存在ul里面嵌套ul了,下一步我们就是把二级菜单进行构建。

2.2 搭建二级菜单项

<div id="menu"><ul><li>首页</li><li>学校</li><li>家乡</li><li><a>IT黄大大</a><ul><li>demo分享</li><li>特效分享</li><li>网页分享</li></ul></li></ul></div>

2.3 引入js文件

当然这边第一步我们得引入jquery组件,第二步就是引入业务逻辑js文件,实现菜单的收缩与隐藏功能,引入的话如下:

<script type="text/javascript" src="js/jquery-1.4.2.js"></script>

自己编写有关展开与伸缩功能的话需要添加如下代码:

$(document).ready(function(){$('li.mainlevel').mousemove(function(){$(this).find('ul').slideDown();//you can give it a speed});$('li.mainlevel').mouseleave(function(){$(this).find('ul').slideUp("fast");});});

其实这个是实现的核心,然后就是CSS的渲染了。
声明:原创于博主《IT黄大大》,欢迎大家转载,烦请转前注明出处,感谢大家的支持,更多专栏可关注文尾唯心宫众号《IT黄大大》

2.4 构建CSS文件

其中主要是针对li下的ul设置成相对定位就可以,也就是position:absolute,这样的话就能充分保证其位置就是基于原先的li下面,不会存在位置的偏移。

#nav .mainlevel {background:#ffe60c; float:left; border-right:1px solid #fff; width:140px;/*IE6 only*/}
#nav .mainlevel a {color:#000; text-decoration:none; line-height:32px; display:block; padding:0 20px; width:100px;}
#nav .mainlevel a:hover {color:#fff; text-decoration:none; background:#062723 url(../images/slide-panel_03.png) 0 0 repeat-x;}
#nav .mainlevel ul {display:none; position:absolute;}
#nav .mainlevel li {border-top:1px solid #fff; background:#ffe60c; width:140px;/*IE6 only*/}

当然很多人可能想要这个效果的源码,这边免费分享给大家,期望能够从源码中得到更多的技术充电,也希望能够和大家携手前行,2024一起进步。

🐋三、源码获取

源码获取方式:
1、灌注唯心公众号【IT黄大大
2、回复【L002菜单下拉
3、即可获取百度网盘下载链接。

🌅 作者寄语

如果我的这篇博客对您有帮助、而且您喜欢我的博客内容,请 “点赞” “评论” “收藏” 一键三连哦!当然如果这个文章对您带来不好的体验还希望能多多包涵,一起学习进步。

【关注我 | 获取更多源码 | 优质文章】 带您学习前端知识、CSS特效、3D炫酷效果、图片展示、文字效果、以及整站模板 、大学生毕业HTML模板 、期末大作业模板等! 「在z公z众z号<IT黄大大>里也会定期分享一些免费好看的html页面,期待您的关注哈」!
声明:原创于博主《IT黄大大》,欢迎大家转载,烦请转前注明出处,感谢大家的支持,更多专栏可关注文尾唯心宫众号《IT黄大大》
2024年我们一起加油,一起成长,感谢您的支持与谅解!
声明:原创于博主《IT黄大大》,欢迎大家转载,烦请转前注明出处,感谢大家的支持,更多专栏可关注文尾唯心宫众号《IT黄大大》

相关文章:

【菜单下拉效果】基于jquery实现二级菜单下拉效果(附完整源码下载)

Js菜单下拉特效目录 &#x1f354;涉及知识&#x1f964;写在前面实现效果&#x1f367;一、涉及知识&#x1f333;二、具体实现2.1 搭建一级菜单2.2 搭建二级菜单项2.3 引入js文件2.4 构建CSS文件 &#x1f40b;三、源码获取&#x1f305; 作者寄语 &#x1f354;涉及知识 ht…...

如何使用resource-counter统计跨Amazon区域的不同类型资源数量

关于resource-counter resource-counter是一款功能强大的命令行工具&#xff0c;该工具基于纯Python 3开发&#xff0c;可以帮助广大研究人员跨Amazon区域统计不同类型资源的数量。 该工具在统计完不同区域的各类资源数量后&#xff0c;可以在命令行中输出并显示统计结果。res…...

nextTick的作用与原理

在 Vue 中&#xff0c;nextTick允许我们延迟执行一段代码&#xff0c;直到 Vue完成其当前的 DOM 更新周期。这使得我们可以在 DOM 更新后安全地访问和修改 DOM 元素。 一、Vue 的异步更新策略 Vue 采用了一种称为异步更新策略的机制。这意味着当数据发生变化时&#xff0c;Vue…...

mybatis工程需要的pom.xml,以及@Data 、@BeforeEach、@AfterEach 的使用,简化mybatis

对 “mybatis - XxxMapper.java接口中方法的参数 和 返回值类型&#xff0c;怎样在 XxxMapper.xml 中配置的问题” 这篇文章做一下优化 这个pom.xml文件&#xff0c;就是上面说的这篇文章的父工程的pom.xml&#xff0c;即&#xff1a;下面这个pom.xml 是可以拿来就用的 <?…...

微信小程序demo-----制作文章专栏

前言&#xff1a;不管我们要做什么种类的小程序都涉及到宣传或者扩展其他业务&#xff0c;我们就可以制作一个文章专栏的页面&#xff0c;实现点击一个专栏跳转到相应的页面&#xff0c;页面可以有科普类的知识或者其他&#xff0c;然后页面下方可以自由发挥&#xff0c;添加联…...

Linux migrate_type初步探索

1、基础知识 我们都知道Linux内存组织管理结构架构&#xff0c;顶层是struct pglist_data&#xff0c;然后再到struct zone&#xff0c;最后是struct page。大概的管理结构是这样的&#xff1a; 根据物理内存的地址范围可划分不同的zone&#xff0c;每个zone里的内存由buddy…...

i.MX 6ULL 裸机 IAR 环境安装

一. IAR 的安装请自行搜索 二. 使用最新版本的 IAR&#xff0c;需要修改 SDK 1. 在 SDK 的 core_ca7.h 加上 #include "intrinsics.h" /* IAR Intrinsics */ 2. debug 时需要修改每个工程下的 ddr_init.jlinkscript&#xff0c;参考链接 Solved: How to conn…...

cmake进阶:文件操作

一. 简介 前面几篇文章学习了 cmake的文件操作&#xff0c;写文件&#xff0c;读文件。文章如下&#xff1a; cmake进阶&#xff1a;文件操作之写文件-CSDN博客 cmake进阶&#xff1a;文件操作之读文件-CSDN博客 本文继续学习文件操作。主要学习 文件重命名&#xff0c;删…...

在UI界面中播放视频_unity基础开发教程

在UI界面中播放视频_unity基础开发教程 前言操作步骤结语 前言 之前我写过一篇在场景中播放视频的文章&#xff0c;但是在开发中有时候也会在UI的界面中播放视频&#xff0c;这期我们做一下在UI的界面中播放视频。 操作步骤 首先在场景中创建一个Raw Image&#xff0c;UI->…...

TypeScipt 联合类型 | 号的使用

联合类型有两种使用方法&#xff1a; 一种类型中多个可能的值。具有多种不同的类型中的一种。 一种类型中多个可能的值。 type isAye true | false;const aye:isAye true; const aye1:isAye false; const aye2:isAye 3; // Type number is not assignable to type isAye…...

MATLAB 变换

MATLAB 变换&#xff08;Transforms&#xff09; MATLAB提供了用于处理诸如Laplace和Fourier变换之类的变换的命令。转换在科学和工程中用作简化分析和从另一个角度查看数据的工具。 例如&#xff0c;傅立叶变换允许我们将表示为时间函数的信号转换为频率函数。拉普拉斯变换使…...

【005_音频开发_基础篇_ALSA_Codec_驱动-MA120x0P功放】

005_音频开发_基础篇_ALSA_Codec_驱动-MA120x0P功放 文章目录 005_音频开发_基础篇_ALSA_Codec_驱动-MA120x0P功放创作背景MA120X0P输出模式BTLSEPBTLSEBTL 硬件配置方式/硬件Limiter限幅器限幅器作用过程 主要寄存器操作指令 ma120x0p.cma120x0p.h 创作背景 学历代表过去、能…...

2、​​​​​​​FreeCAD模块与核心架构总结

FreeCAD作为一个开源的3D建模软件&#xff0c;其内部架构由多个模块组成&#xff0c;这些模块共同协作以支持软件的各种功能。本总结将基于提供的参考文档&#xff0c;对FreeCAD的核心模块、架构特性以及启动过程进行翻译和详细阐述。 核心模块概览 FreeCAD的核心模块主要包括…...

MySQL为什么默认引擎是InnoDB?

因为InnoDB特别强大,其支持很多东西 1.支持事务: 意味着对于一个复杂的SQL语句要么全部执行成功,要么全部失败,因为其底层是原子性的 2.支持并发(行级并发) 意味着面对高并发,多个用户可以同时访问一个表的不同行,不同行之间上锁,而不是给一个表上锁,这样就提高了高并发的性能和…...

K8s: Helm搭建mongodb集群(1)

mongodb 集群搭建 mongdb 部署前 需要创建 pvc, pv 和 sc&#xff0c;如果在云上会自动创建helm 应用中心: https://artifacthub.io 1 &#xff09;Helm 安装 mongodb A. 无本地存储配置&#xff0c;重启数据消失 在 https://artifacthub.io/packages/helm/bitnami/mongodb…...

应用分层和企业规范

目录 一、应用分层 1、介绍 &#xff08;1&#xff09;为什么需要应用分层&#xff1f; &#xff08;2&#xff09;如何分层&#xff1f;&#xff08;三层架构&#xff09; MVC 和 三层架构的区别和联系 高内聚&#xff1a; 低耦合&#xff1a; 2、代码重构 controlle…...

Flutter笔记:Widgets Easier组件库(1)使用各式边框

Flutter笔记 Widgets Easier组件库&#xff08;1&#xff09;&#xff1a;使用边框 - 文章信息 - Author: 李俊才 (jcLee95) Visit me at CSDN: https://jclee95.blog.csdn.netMy WebSite&#xff1a;http://thispage.tech/Email: 291148484163.com. Shenzhen ChinaAddress o…...

OpenHarmony实战开发-上传文件

Web组件支持前端页面选择文件上传功能&#xff0c;应用开发者可以使用onShowFileSelector()接口来处理前端页面文件上传的请求。 下面的示例中&#xff0c;当用户在前端页面点击文件上传按钮&#xff0c;应用侧在onShowFileSelector()接口中收到文件上传请求&#xff0c;在此接…...

外贸企业邮箱是什么?做外贸企业邮箱哪个好?

外贸企业邮箱是什么&#xff1f;外贸企业在进行跨国沟通时必不可少的工具就是外贸企业邮箱&#xff0c;外贸企业邮箱需要具备的条件就是海外邮件抵达率高、安全稳定、多语言沟通。而我们又怎么选择一个适合的外贸企业邮箱呢&#xff1f;小编今天带您一起了解。 一、外贸企业邮…...

写一个简单的程序

思路分析&#xff1a; 1. 导入必要的库 首先&#xff0c;确保你的项目中包含了AWT或Swing库&#xff0c;因为我们将使用它们来创建图形界面。 import javax.swing.*; import java.awt.*; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import j…...

CentOS安装Docker指南

Docker安装与配置教程 Docker作为一种轻量级的虚拟化技术&#xff0c;在现代软件开发和运维中扮演着重要的角色。下面&#xff0c;我将以技术博主的身份&#xff0c;向大家详细介绍如何在Linux系统上安装和配置Docker&#xff0c;特别是如何设置Docker的监听地址和端口&#x…...

python绘图(pandas)

matplotlib绘图 import pandas as pd abs_path rF:\Python\learn\python附件\pythonCsv\data.csv df pd.read_csv(abs_path, encodinggbk) # apply根据多列生成新的一个列的操作&#xff0c;用apply df[new_score] df.apply(lambda x : x.数学 x.语文, axis1)# 最后几行 …...

Android(Java)项目支持Kotlin语言开发

Android&#xff08;Java&#xff09;项目通过相关Kotlin设置后&#xff0c;允许同时使用Java语言和Kotlin语言进行开发代码的。 示例环境&#xff1a; Android Studio Giraffe | 2022.3.1 Patch 3 Java 8 Kotlin 1.9.20 设置Kotlin选项&#xff1a; 第一步&#xff1a;在项…...

Terraform创建模块

模块就是包含一组Terraform代码的文件夹&#xff0c;可以通过模块直接使用别人编写好的Terraform代码来创建资源。 Terraform模块是编写高质量Terraform代码&#xff0c;提升代码复用性的重要手段&#xff0c;可以说&#xff0c;一个成熟的生产环境应该是由数个可信成熟的模块组…...

《华为鸿蒙:从备胎到主角的崛起之路》

华为鸿蒙操作系统的发展历程可以追溯到 2012 年&#xff0c;当时华为开始规划自有操作系统鸿蒙 OS。然而&#xff0c;直到 2019 年 5 月&#xff0c;鸿蒙才正式进入开发阶段。 2019 年 8 月 9 日&#xff0c;华为正式发布了鸿蒙操作系统。 鸿蒙系统的首个版本是于 2019 年推出…...

FPGA学习笔记(2)——Verilog语法及ModelSim使用

1.1 语法 1、赋值语句 和 < 为阻塞赋值&#xff0c;当该语句结束时&#xff0c;下一个语句才开始执行&#xff0c;串行执行 < 为非阻塞幅值&#xff0c;该语句和整个语句块同时执行&#xff0c;并行执行 1.2 ModelSim使用 1、修改源文件路径&#xff1a;File -> …...

2024年十大AI工具,让你的工作学习效率飞跃

在这个迅速变化的数字时代&#xff0c;人工智能技术正在以前所未有的速度发展和革新。AI技术不仅深入科研、医疗和教育等领域&#xff0c;还广泛应用于日常生活和商业活动中。本文梳理了2024年十款最好用的AI工具&#xff0c;它们各有特色&#xff0c;能极大提升工作效率和生活…...

linux之NAMP

linux之NAMP Nmap&#xff08;Network Mapper&#xff09;是一个开源的网络扫描和安全审计工具。它被设计用来快速地扫描大型网络&#xff0c;尽管它也可以对单个主机进行有效的扫描。Nmap利用原始IP数据包以多种方式探测目标网络上的主机、服务&#xff08;应用程序名称和版本…...

uniapp 禁止截屏(应用内,保护隐私)插件 Ba-ScreenShot

禁止截屏&#xff08;应用内&#xff0c;保护隐私&#xff09; Ba-ScreenShot 简介&#xff08;下载地址&#xff09; Ba-ScreenShot 是一款uniapp禁止应用内截屏的插件&#xff0c;保护隐私&#xff0c;支持禁止截屏、放开截屏 截图展示 也可关注博客&#xff0c;实时更新最…...

数字电路-5路呼叫显示电路和8路抢答器电路

本内容涉及两个电路&#xff0c;分别为5路呼叫显示电路和8路抢答器电路&#xff0c;包含Multisim仿真原文件&#xff0c;为掌握FPGA做个铺垫。紫色文字是超链接&#xff0c;点击自动跳转至相关博文。持续更新&#xff0c;原创不易&#xff01; 目录&#xff1a; 一、5路呼叫显…...

全面的手机网站建设/小黄豆crm

缓存穿透 缓存穿透 &#xff1a;缓存穿透是指客户端请求的数据在缓存中和数据库中都不存在&#xff0c;这样缓存永远不会生效&#xff0c;这些请求都会打到数据库&#xff0c;失去了缓存保护后端存储的意义。 解决方案 缓存空值 如果访问数据库后还未命中&#xff0c;则把一…...

临安城市建设公司网站/网络优化工程师工资

1.下载jdk 地址为&#xff1a;http://www.oracle.com/technetwork/java/javase/downloads/index.html2.安装jdk3.搭建环境变量 永久配置方式&#xff1a; 右击我的电脑——>属性——>高级——>环境变量——>系统变量 点击新建: 变量名…...

做网站的故意给中病毒/网络销售怎么找客户

文章目录MyBatis-Plus特性快速开始项目整体目录结构数据库准备配置文件简单CRUD通用service源码下载MyBatis-Plus 官网 个人白话解释&#xff1a;简单的CRUD直接通过方法调用&#xff0c;无需多写接口和xml&#xff0c;像jpa那样调用 愿景 我们的愿景是成为 MyBatis 最好的搭档…...

重庆网站制作天/windows优化大师免费版

我采用的是将tableView设置为UITableViewStyleGrouped,但是设置之后需要对界面进行一系列的调整 如何去除tableView的顶部留白&#xff1f; 分组类型的tableView存在默认数值的header与footer&#xff0c;以下为处理方式&#xff1a; 方法一&#xff1a; (CGFloat)tableView…...

网站设计注意因素/免费浏览网站推广

安利 我如何零基础转行成为一个自信的前端 虽然我只是个做app的&#xff0c;里面很多东西看了没多大用&#xff0c;但我主要学习的是别人的习惯。我现在空闲时间算比较多的&#xff0c;平时想学一些东西的时候&#xff0c;却总是被(自己)打扰。后来就用了里面提到的番茄时间&am…...

吉林网站建设业务/百度搜索下载

overload与override的区别 override&#xff08;重写&#xff0c;覆盖&#xff09; 1、方法名、参数、返回值相同。 2、子类方法不能缩小父类方法的访问权限。 3、子类方法不能抛出比父类方法更多的异常(但子类方法可以不抛出异常)。 4、存在于父类和子类之间。 5、方法被…...