jq+css+html简单实现导航下拉菜单
相信导航栏下拉菜单是web开发最常见的一个item了.这里就不做介绍了,直接上code.
Html部分
<div class="_nav">
<ul id="sddm">
<li><a href="/Home/Index" id="a_nav_Home" class="a_nav_Menu">Home</a>
<div id="nav_Home" class="div_nav_Menu">
</div>
</li>
<li><a href="#" id="a_nav_Employee" class="a_nav_Menu">Employee</a>
<div id="nav_Employee" class="div_nav_Menu">
@Html.ActionLink("Test", "Test", new { area = "BMOManagement", controller = "Test" })
@Html.ActionLink("Test", "Test", new { area = "BMOManagement", controller = "Test" })
@Html.ActionLink("Test", "Test", new { area = "BMOManagement", controller = "Test" })
@Html.ActionLink("Test", "Test", new { area = "BMOManagement", controller = "Test" })
@Html.ActionLink("Test", "Test", new { area = "BMOManagement", controller = "Test" })
</div>
</li>
<li><a href="#" id="a_nav_Billing" class="a_nav_Menu">Billing</a>
<div id="nav_Billing" class="div_nav_Menu">
<a href="#">B Test1</a>
<a href="#">B Test2</a>
</div>
</li>
<li><a href="#" id="a_nav_Forecast" class="a_nav_Menu">Forecast</a>
<div id="nav_Forecast" class="div_nav_Menu">
<a href="#">F Test1</a>
<a href="#">F Test2</a>
<a href="#">F Test3</a>
</div>
</li>
</ul>
</div>
CSS部分
/*********************------------------------------Menu CSS------------------------*********************/
#sddm {
margin: 0 auto;
} #sddm li {
margin:;
padding:;
list-style: none;
float: left;
font: bold 12px arial;
} #sddm li a {
display: block;
margin: 0 1px 0 0;
padding: 4px 10px;
width: 60px;
color: #49AB6E;
text-align: center;
text-decoration: none;
} #sddm li a:hover {
background: #49AB6E;
color: white;
} #sddm div {
position: absolute;
visibility: hidden;
margin:;
padding:;
} #sddm div a {
position: relative;
display: block;
margin:;
width: auto;
white-space: nowrap;
text-align: center;
text-decoration: none;
background: #49AB6E;
color: white;
font: 12px arial;
} #sddm div a:hover {
background: #E5D6B8;
color: white;
}
JS部分
var timeout = 1;
var closetimer = 0;
var ddmenuitem = 0; // close showed layer
function mclose() {
if (ddmenuitem) ddmenuitem.style.visibility = 'hidden';
} // cancel close timer
function mcancelclosetime() {
if (closetimer) {
window.clearTimeout(closetimer);
closetimer = null;
}
} // close layer when click-out
document.onclick = mclose;
// --> $(function () {
// open hidden layer
$(".a_nav_Menu").mouseover(function () {
var currentId = $(this).attr("id"); // cancel close timer
mcancelclosetime(); // close old layer
if (ddmenuitem) ddmenuitem.style.visibility = 'hidden';
$("#" + currentId.replace("a_","")).width($("#" + currentId).parent().width() - 1);
$("#" + currentId).css({ "background": "#49AB6E", "color": "white" }); // get new layer and show it
ddmenuitem = document.getElementById(currentId.replace("a_", ""));
ddmenuitem.style.visibility = 'visible';
}); // go close timer
$(".a_nav_Menu").mouseout(function () {
var currentId = $(this).attr("id");
$("#" + currentId).css({ "background": "", "color": "#49AB6E" }); closetimer = window.setTimeout(mclose, timeout);
}); // go close timer
$(".div_nav_Menu").mouseout(function () {
var currentId = $(this).attr("id");
$("#a_" + currentId).css({ "background": "", "color": "#49AB6E" });
closetimer = window.setTimeout(mclose, timeout);
}); $(".div_nav_Menu").mouseover(function () {
var currentId = $(this).attr("id");
$("#a_" + currentId).css({ "background": "#49AB6E", "color": "white" });
mcancelclosetime();
});
})
这里只是简单实现一下,如果页面要求比较高,可能就不是很实用了,这个只是当时接了一个私活,因为比较注重业务而不是code所以就写的比较快。
作 者:请叫我头头哥
出 处:http://www.cnblogs.com/toutou/
关于作者:专注于基础平台的项目开发。如有问题或建议,请多多赐教!
版权声明:本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文链接。
特此声明:所有评论和私信都会在第一时间回复。也欢迎园子的大大们指正错误,共同进步。或者直接私信我
声援博主:如果您觉得文章对您有帮助,可以点击文章右下角“推荐”一下。您的鼓励是作者坚持原创和持续写作的最大动力!
jq+css+html简单实现导航下拉菜单的更多相关文章
- 纯CSS实现二级导航下拉菜单--css的简单应用
思想:使用css的display属性控制二级下拉菜单的显示与否.当鼠标移动到一级导航菜单的li标签时,显示二级导航菜单的ul标签.由于实现起来比较简单,所以在这里直接给出了参考代码. 1.纯CSS二级 ...
- 简单实用的下拉菜单(CSS+jquery)
原文 简单实用的下拉菜单(CSS+jquery) 没什么可以说的,直接上例子 html+jquery代码 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTM ...
- 用原生JS实现的一个导航下拉菜单,下拉菜单的宽度与浏览器视口的宽度一样(js+html+css)
这个导航下拉菜单需要实现的功能是:下拉菜单的宽度与浏览器视口的宽度一样宽:一级导航只有两项,当鼠标移到一级导航上的导航项时,相应的二级导航出现.在本案例中通过改变二级导航的高度来实现二级导航的显示和消 ...
- HTML DOM部分---做竖向横向的下拉导航 下拉菜单 图片轮播(圆点、箭头) 选项卡 进度条;
1,竖向下拉导航 鼠标单击打开 再打击关闭 <style> *{ margin:0px auto; padding:0px;} div{ width:100px; height:50px; ...
- 兼容ie7的导航下拉菜单
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- bootstrap:导航下拉菜单
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <meta name ...
- MDNavBarView下拉导航菜单(仿美团导航下拉菜单)
说到下拉导航菜单这个东西用得还真不少,细心算一下做开发以来这样的菜单已经写了第三次了,但基本都是不能复用.感觉特累人.不经意看到同事写一个类似的下拉菜单,但他引用了开源库仿大众菜单的库,大致看了一下, ...
- js导航下拉菜单
使用定时器.鼠标移动事件 var img = $('#user_head'); var menu = $('.nav_list'); var i=0; var timer; img.mouseente ...
- 一个css和js结合的下拉菜单,支持主流浏览器
首先声明: 本人尽管在web前端岗位干了好多年,但无奈岗位对技术要求不高.html,css用的比較多,JavaScript自己原创的非常少,基本都是copy改动,所以自己真正动手写时,发现基础非常不坚 ...
随机推荐
- 几种常见语言的命名空间(Namespace)特性
命名空间提供了一种从逻辑上组织类的方式,防止命名冲突. 几种常见语言 C++ 命名空间是可以嵌套的 嵌套的命名空间是指定义在其他命名空间中的命名空间.嵌套的命名空间是一个嵌套的作用域,内层命名空间声明 ...
- CenOS下firefox browser (火狐浏览器)无法播放网页音乐的解决方法
新装载的Firefox或许无法播放网页音频,解决方法如下: 1. 下载并安装 flashplayer插件&&下载网址:https://get.adobe.com/flashplayer ...
- 算法:二分查找(python版)
#!/usr/bin/env python #coding -*- utf:8 -*- #二分查找#时间复杂度O(logn)#一个时间常量O(1)将问题的规模缩小一半,则O(logn) import ...
- No.013:Roman to Integer
问题: Given a roman numeral, convert it to an integer.Input is guaranteed to be within the range from ...
- Python多线程学习
一.Python中的线程使用: Python中使用线程有两种方式:函数或者用类来包装线程对象. 1. 函数式:调用thread模块中的start_new_thread()函数来产生新线程.如下例: ...
- 使用 HTML5 Canvas 绘制出惊艳的水滴效果
HTML5 在不久前正式成为推荐标准,标志着全新的 Web 时代已经来临.在众多 HTML5 特性中,Canvas 元素用于在网页上绘制图形,该元素标签强大之处在于可以直接在 HTML 上进行图形操作 ...
- CSS3 模块
CSS3 被划分为模块. 其中最重要的 CSS3 模块包括: 选择器 框模型 背景和边框 文本效果 2D/3D 转换 动画 多列布局 用户界面
- Spring MVC 处理模型数据(@ModelAttribute)
SpringMVC中的模型数据是非常重要的,因为MVC中的控制(C)请求处理业务逻辑来生成数据模型(M),而视图(V)就是为了渲染数据模型的数据. 直白来讲,上面这句话的意思就是:当有一个查询的请求, ...
- JavaScript学习笔记-基础语法、类型、变量
基础语法.类型.变量 非数字值的判断方法:(因为Infinity和NaN他们不等于任何值,包括自身) 1.用x != x ,当x为NaN时才返回true; 2.用isNaN(x) ,当x为NaN或 ...
- 移动web开发介绍——浏览器
前段时间了解学习了一下<移动Web手册>,觉得真的需要这种不是偏向技术.框架或工具的书籍,只是单纯的讲解一些关于移动Web最基本的知识.正好今天整理一部分之前学习过的内容,记录和分享,也方 ...