ASP.NET MVC搭建项目后台UI框架—2、菜单特效
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了ASP.NET MVC搭建项目后台UI框架—2、菜单特效,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含5488字,纯文字阅读大概需要8分钟。
内容图文
目录
上一篇,已经把整个项目的框框给搭建好了,但是还没有任何js效果实现。这一节,我就来说下关于菜单的特效实现。我需要的效果如下:
需求总结:
- 点击顶部菜单模块,左侧显示不同模块下面的菜单列表
- 点击左侧菜单选项,展开下面的子菜单,并折叠其它菜单模块,菜单图标折叠显示为+,展开显示为-。
1、先看下Top视图中代码:
2、在Top视图的head中添加如下js:
<script src="~/Scripts/jquery-1.8.3.min.js"></script> <script type="text/javascript">
//控制Left视图中菜单模块的显示 function showLeftList(divId) { self.parent.frames["leftFrame"].showDivMenu(divId); }
//菜单点击高亮显示 $(function () { $(".nav_list ul li a").click(function () { //$(".nav_list ul li a").css("color", "#ceebff");//$(this).css("color", "yellow"); $(".nav_list ul li a").css("background-color", ""); $(".nav_list ul li a").css("color", "#ceebff"); $(this).css("background-color", "#66d354"); $(this).css("color", "white"); }); }); </script>
3、在Top视图中,菜单项添加js方法showLeftList,这个方法中传入了一个参数,这个参数就是Left视图中菜单层的id。
< li >< a href ="#" onclick ="showLeftList(‘divOrder‘)" >业务管理</a><li class="slctd"><a href="#" onclick="showLeftList(‘divFinancial‘)">财务管理</a><li><a href="#" onclick="showLeftList(‘divSysManage‘)">系统管理</a>
4、查看Left视图代码,注意id的命名,因为这关系到js的调用:
< body > < div class ="leftbar" id ="divOrder" > < dl > < dt class ="head2" id ="dt_ulOrder" onclick =‘ShowMenuList("ulOrder")‘ >订单管理</dt><ul class="box_n" id="ulOrder"><li><a href="#">批量新建订单</a></li><li><a href="#">手工新建订单</a></li><li><a class="nav_sub" href="#">订单草稿<span>(3)</span></a></li><li><a href="#">已确认订单<span>(3)</span></a></li><li><a href="#">待发货订单<span>(3)</span></a></li><li><a href="#">已发货订单<span>(0)</span></a></li><li><a href="#">订单回收站<span>(0)</span></a></li><li><a href="#">退件<span>(0)</span></a></li><li><a href="#">批量修改订单</a></li></ul></dl><dl><dt class="head1" id="dt_ulLading" onclick=‘ShowMenuList("ulLading")‘>提单管理</dt><ul class="box_n" id="ulLading" style="display:none;"><li><a href="#">创建托盘</a></li><li><a href="#">未交货托盘<span>(6)</span></a></li><li><a href="#">已交货托盘</a></li><li><a href="#">创建交货单</a></li><li><a href="#">交货单列表</a></li><li><a href="#">待预扣提单<span>(3)</span></a></li><li><a href="#">已预扣提单</a></li></ul></dl><dl><dt class="head1" id="dt_ulIdentityCard" onclick=‘ShowMenuList("ulIdentityCard")‘>身份证管理</dt><ul class="box_n" id="ulIdentityCard" style="display:none;"><li><a href="#">待验证身份证<span>(3)</span></a></li><li><a href="#">无需验证身份证<span>(3)</span></a></li><li><a href="#">已验证身份证<span>(3)</span></a></li></ul></dl></div><div class="leftbar" id="divSysManage"></div><div class="leftbar" id="divFinancial"><dl><dt id="dt_ulChannel" class="head2" onclick=‘ShowMenuList("ulChannel")‘>渠道费用管理</dt><ul class="box_n" id="ulChannel"><li><a href="#" onclick="goNewPage(‘a.html‘,‘渠道分类‘);">渠道分类</a></li><li><a target="mainFrame" id="channelManage" onclick="goNewPage(‘/Channel/Index‘,‘渠道管理‘);">渠道管理</a></li><li><a href="#">分区管理</a></li><li><a href="#">价格管理</a></li></ul></dl><dl><dt id="dt_ulFinancial" class="head1" onclick=‘ShowMenuList("ulFinancial")‘>财务管理</dt><ul class="box_n" id="ulFinancial" style="display: none;"><li><a href="#">财务流水</a></li><li><a href="#">提单对账</a></li><li><a href="#">运单对账</a></li><li><a href="#">异常费用对账</a></li><li><a href="#">充值记录</a></li></ul></dl></div></body>
5、Left视图中head部分添加如下js:
< script src ="~/Scripts/jquery-1.7.1.min.js" ></ script > < script type ="text/javascript" > // 显示菜单下面的选项 function ShowMenuList(id) { var objectobj = document.getElementById(id); var dtObj = document.getElementById( " dt_ " + id); if (objectobj.style.display == " none " ) { objectobj.style.display = "" ; dtObj.setAttribute( " class " , " head2 " ); // 其它菜单折叠 $(dtObj).parent().parent().find( " dt " ).not(dtObj).attr( " class " , " head1 " ); // 折叠 $(objectobj).parent().parent().find( " ul " ).not(objectobj).css( " display " , " none " ); // 隐藏菜单子项 } else { objectobj.style.display = " none " ; dtObj.setAttribute( " class " , " head1 " ); } } // 控制菜单模块的显示和隐藏 function showDivMenu(divId) { $( " # " + divId).css( " visibility " , " visible " ); $( " # " + divId).siblings( " div " ).css( " visibility " , " hidden " ); } $( function () { $( " .box_n li a " ).click( function () { $( " .box_n li a " ).removeClass( " nav_sub " ); $( this ).addClass( " nav_sub " ); }); }); function goNewPage(url,name) { self.parent.frames[ " mainFrame " ].addTab(url,name); } </ script >
至此,菜单特效,我们就已经添加上去了,你可以按F5运行看下效果。
框架中用到的js和css:CssJsImg源码
原文:http://www.cnblogs.com/jiekzou/p/4508513.html
内容总结
以上是互联网集市为您收集整理的ASP.NET MVC搭建项目后台UI框架—2、菜单特效全部内容,希望文章能够帮你解决ASP.NET MVC搭建项目后台UI框架—2、菜单特效所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。