用Jquery 仿VS 样式的 导航栏插件
在开发B/S 项目过程中,根据主界面设计要求,需要做一个类似VS 左边工具栏样式的菜单导航栏,在网上搜索无果后,于是决定自已做一个。
由于前台用JQuery开发, 想到网上很多人用JQuery做插件,开发起来很方便。于是呼,我也照猫画虎地瞎做一个,限本人文采水平一般,只能贴代码共享。
效果图:
代码:
/*
* toolsTags 0.1
* Copyright (c) 2014 www.xacf.com YeHui 叶辉
* Date: 2014-8-4
* JQuery 插件 支持JQuery 1.3.2 和1.10.2
* 仿VS 左侧工具导航栏样式的菜单工具栏插件。
*/
var toolsTag = {
toolsTags: [
{ title: "导航1", cative: 1 },
{ title: "导航2", cative: 0 },
{ title: "导航3", cative: 0 }
]
};
(function ($) {
var ver = $.fn.jquery;
$.fn.toolsTags = function (options) {
var defaults = {
data: toolsTag
}, options = $.extend(defaults, options),
tags = [],
contents = [],
tagName = "#tag",
contentName = "#toolsContent",
activeToolsIndex = 0; var uld = $('<ul />', {
id: "toolsTags"
}).appendTo("#tools_layout").addClass("t_toolsTags");
if (ver === "1.3.2")
uld.attr("id", "toolsTags"); if (options.data.toolsTags && $.isArray(options.data.toolsTags)) {
$.each(options.data.toolsTags, function (i, val) {
var lid = $('<li />', {
id: "tag" + i,
html: val.title,
tabIndex: i
}).appendTo("#toolsTags"); var divD = $('<div />', {
id: "toolsContent" + i
}).appendTo("#tools_layout").addClass("t_toolsContent"); tags.push(tagName + i);
contents.push(contentName + i); if (ver === "1.3.2") {
lid.attr("id", "tag" + i).html(val.title);
lid.attr("tabIndex", i);
divD.attr("id", "toolsContent" + i);
} if (val.cative === 1) {
$("#tag" + i).addClass("i_active");
$("#toolsContent" + i).addClass("t_contentActive");
}
});
};
$.each(tags, function (i, val) { $(val).click(function (e) {
tags_SetActive();
var index = e.target.tabIndex; $(tags[index]).addClass("i_active");
$(contents[index]).addClass("t_contentActive");
activeToolsIndex = index;
}); $(val).mouseover(function (e) {
$.each(tags, function (i, val) {
$(tags[i]).removeClass("i_active");
});
var index = e.target.tabIndex;
$(tags[index]).addClass("i_active");
});
$(val).mouseout(function (e) {
$.each(tags, function (i, val) {
$(tags[i]).removeClass("i_active");
});
$(tags[activeToolsIndex]).addClass("i_active");
});
}); function tags_SetActive() {
$.each(tags, function (i, val) {
$(tags[i]).removeClass("i_active");
});
$.each(contents, function (i, val) {
$(contents[i]).removeClass("t_contentActive");
});
}
};
})(jQuery);
HTML
<div id="tools_layout">
</div> <script type="text/javascript"> $().toolsTags();
$("#toolsContent1").html("导航栏二中的菜单项");
</script>
CSS 样式表
html, body, div, p, h1, h2, h3, h4, h5, h6, dl, dt, dd, ul, ol, li, caption, th, td, img, form, fieldset, legend, input, label, button, textarea {
margin: 0;
padding: 0;
} html, body {
font-family: Arial,SimSun;
font-size: 14px;
font: normal 12px/14px SimSun,arial;
} ul {
list-style: none;
} #tools_layout {
width: 260px;
margin: 0 auto;
} .t_toolsTags {
position: absolute;
left: 0;
z-index: 9;
border-right: 2px solid #3BB1A3;
background-color: #3BB1A9;
width: 25px;
height: 100%;
} .t_toolsTags li {
width: 100%;
_min-height: 100px;
height: auto;
padding-top: 10px;
padding-bottom: 10px;
line-height: 120%;
text-align: center;
cursor: pointer;
margin-bottom: 2px;
font-family: SimSun;
font-size: 14px;
} .t_toolsTags li,
.t_toolsTags li.i_active {
margin-left: 0px;
padding-left: 2px;
} .t_toolsTags li {
background-color: #218175;
} .t_toolsTags li.i_active {
background-color: #dcf8fa;
} .t_toolsContent {
left: 0;
margin-left: 27px;
height: 100%;
border-right: 2px solid #00ff21;
width: 180px;
background-color: #dcf8fa;
position: absolute;
display: none;
padding-left: 5px;
} .t_contentActive {
display: block;
} .hrtest {
height: 5px;
width: 100%;
border-top: 1px solid red;
border-left: none;
border-right: none;
border-bottom: none;
}
用Jquery 仿VS 样式的 导航栏插件的更多相关文章
- 利用JQ实现的,高仿 彩虹岛官网导航栏(学习HTML过程中的小记录)
利用JQ实现的,高仿 彩虹岛官网导航栏(学习HTML过程中的小记录) 作者:王可利(Star·星星) 总结: 今天学习的jQ类库的使用,代码重复的比较多需要完善.严格区分大小写,在 $(" ...
- jquery自定义插件-参数化配置多级菜单导航栏插件
1 自定义菜单导航栏插件的必要性 看图说话,下面是利用自定义的菜单导航栏插件simpleMenu创建的网站导航示例: 插件默认提供的是如上图的导航栏样式,即一二级菜单为横向分布:三四级菜单为纵向分布. ...
- jQuery仿Android锁屏图案应用插件
<!doctype html> <html> <head> <meta charset="utf-8"> <title> ...
- jquery仿天猫商城左侧导航菜单
之前看到有博友写了一个仿天猫商城左侧导航菜单,可惜不提供免费下载,也没有代码.以前自己也写过类似的效果,只是都是一小块一小块的,现在重新拼凑.我将一步一步的实现拼凑过程,希望对你有所帮助. Demo在 ...
- (转)jquery仿天猫商城左侧导航菜单
原文地址:http://www.cnblogs.com/WinKi/p/3398824.html 之前看到有博友写了一个仿天猫商城左侧导航菜单,可惜不提供免费下载,也没有代码.以前自己也写过类似的效果 ...
- 一款基于的jQuery仿苹果样式焦点图插件
这次我们要分享的这款jQuery焦点图非常特别,它的外观特别简单,但是又相当大气.焦点图的整体样式是仿苹果样式的,由于jQuery的运用,我们只要点击图片下方的缩略图即可达到图片切换的焦点图特效,这款 ...
- 用jquery制作一个简单的导航栏
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...
- Android之仿今日头条顶部导航栏效果
随着时间的推移现在的软件要求显示的内容越来越多,所以要在小的屏幕上能够更好的显示更多的内容,首先我们会想到底部菜单栏,但是有时候像今日头条新闻客户端要显示的内容太多,而且又想在主界面全部显示出来,所以 ...
- jQuery实现鼠标滑过导航栏呈现不同的样式
素材图片 源码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...
随机推荐
- 如何将位图格式图片文件(.bmp)生成geotiff格式图片?
一.位图格式信息 位图BITMAPINFOHEADER 与BITMAPFILEHEADER: 先来看BITMAPINFOHEADER,只写几个主要的 biSize包含的是这个结构体的大小(包括颜色表) ...
- C# SQL多条件查询拼接技巧
本文转载:http://blog.csdn.net/limlimlim/article/details/8638080 #region 多条件搜索时,使用List集合来拼接条件(拼接Sql) Stri ...
- Latex插入图片 分类: LaTex 2014-11-18 20:07 261人阅读 评论(0) 收藏
在Latex中插入图片的方式很多,我这里只介绍自己常用的一种方式,欢迎大家指导. 我习惯于使用graphicx宏包来插入图片,有时候会配合上subfigure宏包来同时插入多幅图片组合. 首先,需要在 ...
- [RxJS] Filtering operator: single, race
Single, race both get only one emit value from the stream. Single(fn): const source = Rx.Observable. ...
- 动态代理与AOP
1. 代理的分类: 静态代理:每个代理类只能为一个接口服务 动态代理:可以通过一个代理类完成全部的代理功能(由JVM生成实现一系列接口的代理类,即:生成实现接口的类的代理) 2. 动态代理: 在Jav ...
- android反编译经验谈
反编译这事,找对了工具其实非常简单. 反编译工具下载地址http://pan.baidu.com/s/1eQvshwu android的反编译要经过两个步骤: 1.把dex文件转为jar 2.jar转 ...
- Java基础知识强化之集合框架笔记44:Set集合之TreeSet保证元素唯一性和自然排序的原理和图解
1. TreeSet保证元素唯一性和自然排序的原理和图解 2. TreeSet唯一性以及有序性底层剖析: 通过观察TreeSet的add()方法,我们知道最终要看TreeMap的put()方法. 跟踪 ...
- 实训第二天早上--hibernate之配置文件映射和注解
hibernate 逐步优化第一步 只按照步骤来提取的jre包导入错误第二步 继续封装,把增删改查提取出来,同时进行代码的封装HQL语句 be stranger in the code .be fo ...
- nest 'for' loop.
/* nest for loop demo. Note that,'upside' triangle controls 'inner condition'. */ import kju.print.P ...
- 函数对象的prototype总结
通过看 http://www.cnblogs.com/mindsbook/archive/2009/09/19/javascriptYouMustKnowPrototype.html 该文章和对代码的 ...