`

javascript——JS 实现下拉菜单

阅读更多

JS简单实现下拉菜单

首先,写一个菜单条,包含菜单,加上菜单项,并给他们加上样式,使下拉菜单变得更加美观,再加上js效果,设置其是否可见,用js写一个方法调用即可。
                 

上图,是我写的一个简单的下拉菜单条,最右边的为初始状态。

接下来让我们开始写一个类似上面的下拉菜单(没有写样式的)

 

首先,写出四个带菜单项的的菜单分别展开显示。

我列出第一个做例子,需要给每个菜单的菜单项的整体定义一个id,如下图的ul的id,这里为了方便,将id分别取为:0、1、2、3  (给菜单项加上链接是为了鼠标放上去更好的看到效果)

给span加上id=“00”,是为了显示菜单的变化,分别定义:00,01,02,03

(+:表示打开下拉,- :表示收起)

<div> 
<div >span id="00">+<span>一级菜单A</div>
<ul id="0" background="blue">
    <li><a href="#">一级菜单</a></li>
    <li><a href="#">一级菜单</a></li>
    <li><a href="#">一级菜单</a></li>
    <li><a href="#">一级菜单</a></li>
</ul></div>

 同样的方法写出余下三个(参照图片,代码略)

第二步,给小菜单项加上一个style 设置是否可见的样式

block  为可见; none  为不可见。在这里讲第一个设置为可见,其他的设置为不可见。

<ul style="display:block" id="0">

 第三步,编写js方法(核心)

//编写一个方法,用来改变菜单项的是否可见,来实现菜单的收起和下拉,并传入当前对象的id
function caiDan(id){
    //定义一个变量,用来保存span的id
    var num = '0'+id;
    //通过document.getElementById()这个方法得到当前对象
    var idd = document.getElementById(id);
    //判断当前对象的style.display  是否可见
    //如果不可见,则将其改为可见
	if(idd.style.display=="none"){
		idd.style.display="block";
		//将span中的“-”改为“+”,打开下拉菜单
		document.getElementById(num).innerHTML="+";
	}else{
		//否则将其设置为不可见
		idd.style.display="none";
		//将span中的“+”改为“-”,收起下拉菜单
		document.getElementById(num).innerHTML="-";
	}
	//利用for循环,将除了当前对象以外的都设为不可见 隐藏
	for(var i=0;i<4;i++){
		//除开当前对象
		if(i!=id){
		//设置为不可见,收起
		document.getElementById(i).style.display="none";
		document.getElementById('0'+i).innerHTML="-";
		}
	}
}

 

 第四步,写完方法,给菜单栏的每次菜单加上onclick方法(点击事件)加上caiDan(id)方法

<div  onclick="caiDan('0')"><span id="00">-</span>一级菜单A</div>

 最后,在浏览器中打开,点击即可看到效果

 

  • 大小: 3.8 KB
  • 大小: 3.8 KB
  • 大小: 2 KB
0
0
分享到:
评论
1 楼 百合不是茶 2014-12-07  
触发事件中传入(this,id);可以直接在if-else里面触发就显示,否者隐藏

相关推荐

    javascript实现简单的下拉菜单

    通过本文的学习,你将能够理解并掌握基本的下拉菜单实现方法,并可以在此基础上进行扩展。 #### 二、HTML结构 首先,我们来看一下这个简单的下拉菜单的HTML结构。整个结构由四个`&lt;div&gt;`元素组成:两个作为菜单按钮...

    JavaScript实践——年月日下拉菜单

    在这个场景中,我们将使用JavaScript来生成和控制下拉菜单。 一、HTML结构 在HTML中,我们通常会创建三个`&lt;select&gt;`元素,分别对应年、月和日。每个`&lt;select&gt;`标签内包含多个`&lt;option&gt;`标签,每个`&lt;option&gt;`表示一...

    JS+HTML联动下拉菜单

    在网页设计中,交互性是提升用户体验的关键因素之一,而JS+HTML联动下拉菜单则是实现这一目标的有效手段。这种菜单允许用户通过选择一个选项来影响另一个下拉菜单的显示内容,为用户提供更加直观和高效的导航体验。...

    mootools版无限级纵向下拉菜单

    **JavaScript 下拉菜单详解——基于MooTools框架** 在网页设计中,下拉菜单是一种常见的交互元素,它能够有效地组织和展示大量的导航链接,尤其是在有限的空间内。MooTools是一款强大的JavaScript库,提供了丰富的...

    jQuery仿美橙互联下拉菜单特效.zip

    例如,初始状态下,下拉列表的display设为none,当用户悬停在父级元素上时,通过JavaScript改变其display属性为block,从而实现下拉菜单的展开。同时,CSS还可以用于定义菜单项的字体、颜色、边框等视觉效果。 ...

    Bootstrap鼠标右键下拉菜单特效

    在这个特定的项目中,我们关注的是一个独特的功能——"Bootstrap鼠标右键下拉菜单特效"。这个特效允许用户在网页的特定区域内通过鼠标右键点击触发一个下拉菜单,提供了丰富的交互体验。 首先,我们要了解Bootstrap...

    javascript下拉菜单.txt

    ### 描述:javascript下拉菜单.txt 很实用的js脚本,下载后只需修改一下后缀名即可使用. 这段描述提供了关于该文件的一些背景信息,指出这是一个非常实用的JavaScript脚本,用户只需下载并在适当的位置修改文件扩展...

    Javascript下拉透明菜单.rar,直接使用

    在这个“Javascript下拉透明菜单.rar”压缩包中,包含了一个可以直接使用的下拉透明菜单实现。这个菜单可能是通过HTML、CSS和JavaScript三者结合来创建的,下面我们将深入探讨相关知识点。 首先,HTML(HyperText ...

    超简洁CSS抽屉式下拉菜单代码,无JS哦,加载速度快

    本主题聚焦于一个特别的实现方式——“超简洁CSS抽屉式下拉菜单”,它的一大亮点在于无需JavaScript(JS),仅依赖CSS来实现,这使得页面加载速度更快,提升了用户访问效率。 CSS(层叠样式表)是网页设计的核心...

    JavaScript——DOM

    JavaScript——DOM DOM,全称为“Document Object Model”,即文档对象模型,是W3C组织定义的一种标准,用于表示HTML或XML文档的结构,并提供了一种程序化访问和操作文档内容的方法。DOM允许开发者通过JavaScript或...

    jQuery树形多级下拉菜单.zip

    《jQuery树形多级下拉菜单的实现与应用》 在网页设计中,为了提供用户友好的导航体验,树形多级下拉菜单是一种常见且有效的解决方案。"jQuery树形多级下拉菜单"就是这样一款实用的代码资源,它允许开发者创建具有...

    支持FF、IE6下很实用的三级下拉菜单

    "支持FF、IE6下面很实用的三级下拉菜单"这个主题聚焦于在两种不同的浏览器环境——Firefox(FF)和Internet Explorer 6(IE6)上实现这样的功能。由于这两个浏览器在处理CSS和JavaScript方面存在显著差异,因此设计...

    19款JS版简洁下拉菜单特效-包括图片菜单.rar

    总的来说,这个压缩包提供了一个学习和借鉴JavaScript下拉菜单设计的机会,同时也提出了一个挑战——如何在代码被混淆的情况下进行定制。解决这个问题需要一定的JavaScript技能和工具,以及对Web开发基本原理的理解...

    jQuery手风琴滑动下拉菜单代码.zip

    《jQuery手风琴滑动下拉菜单代码解析与实现》 在网页设计中,菜单导航是用户界面的重要组成部分,它帮助用户快速定位并访问网站内容。而jQuery手风琴滑动下拉菜单作为一种常见的交互元素,能有效地节省空间,提供...

    一个很好用的web下拉式菜单插件

    本篇文章将深入探讨一个名为“jQuery PopMenu”的高效web下拉式菜单插件,它是一个基于JavaScript库jQuery构建的解决方案,提供了丰富的自定义选项,让开发者可以轻松创建符合网站设计风格的下拉菜单。 首先,我们...

    jquery导航下拉菜单

    - `jquery.dropSlideMenu.js` / `jquery.dropSlideMenu.min.js`:插件的JavaScript源文件和压缩版文件,实现下拉菜单的逻辑。 - `jquery.event.hover.js`:辅助文件,处理鼠标悬停事件。 - `demo.html`:示例文件...

    JavaScript——Ajax

    2. **级联菜单.html**:可能展示了如何利用Ajax动态加载下拉菜单的选项,当用户选择某个菜单项时,通过Ajax获取相关联的子菜单数据。 3. **查询成绩.html**:可能是一个简单的表单提交示例,用户输入查询条件,通过...

    JS模拟WINDOW,右键弹出下拉菜单

    总的来说,模拟WINDOW的右键弹出下拉菜单是通过JavaScript和jQuery实现的,结合HTML和CSS来完成交互和视觉设计。使用jQuery Context Menu插件可以简化这个过程,提供丰富的自定义选项和方便的回调机制。通过深入学习...

    jQuery输入框下拉选择菜单.zip

    在本项目中,jQuery提供了简洁的API,使得开发者可以方便地实现下拉菜单的各种交互效果。例如,使用jQuery的`$(selector).click(function)`可以监听到用户的点击事件,而`$(selector).show()`和`$(selector).hide()`...

    静态网页,原生代码制作,有三级下拉菜单

    本主题聚焦于一个特定的交互设计元素——下拉菜单,特别是具有三级结构的下拉菜单。下拉菜单在网站导航中广泛应用,因为它能有效地节省页面空间并提供层次清晰的选项。 一、HTML基础 HTML(超文本标记语言)是网页...

Global site tag (gtag.js) - Google Analytics