在开发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 样式的 导航栏插件的更多相关文章

  1. 利用JQ实现的,高仿 彩虹岛官网导航栏(学习HTML过程中的小记录)

    利用JQ实现的,高仿 彩虹岛官网导航栏(学习HTML过程中的小记录)   作者:王可利(Star·星星) 总结: 今天学习的jQ类库的使用,代码重复的比较多需要完善.严格区分大小写,在 $(" ...

  2. jquery自定义插件-参数化配置多级菜单导航栏插件

    1 自定义菜单导航栏插件的必要性 看图说话,下面是利用自定义的菜单导航栏插件simpleMenu创建的网站导航示例: 插件默认提供的是如上图的导航栏样式,即一二级菜单为横向分布:三四级菜单为纵向分布. ...

  3. jQuery仿Android锁屏图案应用插件

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  4. jquery仿天猫商城左侧导航菜单

    之前看到有博友写了一个仿天猫商城左侧导航菜单,可惜不提供免费下载,也没有代码.以前自己也写过类似的效果,只是都是一小块一小块的,现在重新拼凑.我将一步一步的实现拼凑过程,希望对你有所帮助. Demo在 ...

  5. (转)jquery仿天猫商城左侧导航菜单

    原文地址:http://www.cnblogs.com/WinKi/p/3398824.html 之前看到有博友写了一个仿天猫商城左侧导航菜单,可惜不提供免费下载,也没有代码.以前自己也写过类似的效果 ...

  6. 一款基于的jQuery仿苹果样式焦点图插件

    这次我们要分享的这款jQuery焦点图非常特别,它的外观特别简单,但是又相当大气.焦点图的整体样式是仿苹果样式的,由于jQuery的运用,我们只要点击图片下方的缩略图即可达到图片切换的焦点图特效,这款 ...

  7. 用jquery制作一个简单的导航栏

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title> ...

  8. Android之仿今日头条顶部导航栏效果

    随着时间的推移现在的软件要求显示的内容越来越多,所以要在小的屏幕上能够更好的显示更多的内容,首先我们会想到底部菜单栏,但是有时候像今日头条新闻客户端要显示的内容太多,而且又想在主界面全部显示出来,所以 ...

  9. jQuery实现鼠标滑过导航栏呈现不同的样式

    素材图片 源码: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://ww ...

随机推荐

  1. jersey构建rest服务返回json数据

    1.  eclipse 创建 dynamic web project 2.  将jersey相关jar包放到libs目录下 3. web.xml 增加 jersey 相关内容 <?xml ver ...

  2. Android常用网址[转]

    转自:http://my.oschina.net/u/593225/blog/404423 1.AndroidDevTools URL: http://www.androiddevtools.cn/ ...

  3. good page

    http://www.cnblogs.com/zrtqsk/category/540486.html

  4. TCP 函数

    [root@localhost tt]# man listen LISTEN() Linux Programmer’s Manual LISTEN() NAME listen - listen for ...

  5. java EE 学习

    http://blog.csdn.net/liushuijinger/article/category/1342030/1

  6. Java Socket 学习笔记

    TCP协议的Socket编程 Socket:英文中的意思是插座.两个Java应用程序可以通过一个双向的网络通信连接实现数据交换,这个双向链路的一端称为一个Socket.Java中所有关于网络编程的类都 ...

  7. Spire.Barcode好用的条码生在组件

    由于项目的需要,今天在网上找了一下条码的组件,发现了一个简单易用的组件,使用简单,几句代码就搞定了.

  8. sqlserver 时间转换

    sql server2000中使用convert来取得datetime数据类型样式(全) 日期数据格式的处理,两个示例: CONVERT(varchar(), 时间一, ) 结果:-- :/*时间一般 ...

  9. 读取xml时,遇到xmlns的问题

    1.读取xml的时候,由于xml里有xmlns的属性,导致了读xml无法正常读取.通过网上搜索,发现需要先注册命名空间.  xmlns是XML Namespaces的缩写,中文名称是XML(标准通用标 ...

  10. c#中的interface abstract与virtual

    interface用来声明接口1.只提供一些方法规约,不提供方法主体  如  public interface IPerson {  void getName();//不包含方法主体  }2.方法不能 ...