layUI 三級導航選單的實現
阿新 • • 發佈:2019-02-10
廢話不多說,直接上程式碼:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<title>layout 後臺大布局 - Layui</title>
<link rel="stylesheet" href="../css/layui.css">
<script src="../layui.js"></script>
<style>
.layui-layout-left{position: absolute !important; left: 0px; top: 0;}
/*layui child nav*/
.layui-nav-child{display: none; position: absolute; left: 0; top: 65px; min-width: 100%; line-height: 36px; padding: 5px 0; box-shadow : 0 2px 4px rgba(0,0,0,.12); border: 1px solid #d2d2d2; background-color: #fff; z-index: 100; border-radius: 2px; white-space: nowrap;}
.layui-nav .layui-nav-child a{color: white;}
.layui-nav .layui-nav-child a:hover{background-color:deepskyblue; color: white;}
.layui-nav-child dd{position : relative;}
.layui-nav-child dd.layui-this{background-color: transparent; color: white;}
.layui-nav .layui-nav-child dd.layui-this a{background-color: transparent; color: white;}
.layui-nav-child dd.layui-this:after{display: none;}
/*layui third level nav*/
.layui-nav-third-child{display: none; position: absolute; left: 105px;top:25px;min-width: 100%; line-height: 36px; padding: 5px 0; box-shadow: 0 2px 4px rgba(0,0,0,.12); border: 1px solid #d2d2d2; background-color: #fff; z-index: 100; border-radius: 2px; white-space: nowrap;}
.layui-nav .layui-nav-third-child a{color: white;}
.layui-nav .layui-nav-third-child a:hover{background-color:deepskyblue; color: white;}
.layui-nav-third-child li{position: relative;}
.layui-nav-third-child li{background-color: transparent; color: white;}
.layui-nav .layui-nav-third-child li.layui-this a{background-color: transparent; color: white;}
.layui-nav-third-child li:after{display: none;}
</style>
</head>
<body class="layui-layout-body ">
<div class="layui-layout layui-layout-admin layui-bg-blue">
<div class="layui-header layui-bg-blue">
<div style="margin-left: 20px">
<b style="font-size: 35px">船信保密安全綜合管控平臺</b><br>
<b>CSIT integrated Control System of Confidentiality and Security</b>
</div>
<!-- 頭部區域(可配合layui已有的水平導航) -->
<ul class="layui-nav layui-layout-right">
<li class="layui-nav-item">
<a href="javascript:;">
<img src="http://t.cn/RCzsdCq" class="layui-nav-img">
賢心
</a>
<dl class="layui-nav-child">
<dd><a href="#">基本資料</a></dd>
<dd><a href="#">安全設定</a></dd>
</dl>
</li>
<li class="layui-nav-item"><a href="">退了</a></li>
</ul>
</div>
<div class="layui-header layui-bg-blue">
<!-- 頭部區域(可配合layui已有的水平導航) -->
<ul class="layui-nav layui-layout-left">
<li class="layui-nav-item"><a href="#">控制檯</a></li>
<li class="layui-nav-item"><a href="#">商品管理</a></li>
<li class="layui-nav-item"><a href="#">使用者</a></li>
<li class="layui-nav-item">
<a href="javascript:;">其它系統</a>
<dl class="layui-nav-child layui-bg-blue">
<dd><a href="">郵件管理</a></dd>
<dd><a href="">訊息管理</a></dd>
<dd><a href="">授權管理</a></dd>
<dd>
<a href="javascript:;" class="third-class">其它系統2</a>
<ol class="layui-nav-third-child layui-bg-blue">
<li><a href="">郵件管理2</a></li>
<li><a href="">訊息管理2</a></li>
<li><a href="">授權管理2</a></li>
</ol>
</dd>
<dd>
<a href="javascript:;" class="third-class">其它系統3</a>
<ol class="layui-nav-third-child layui-bg-blue">
<li><a href="">郵件管理3</a></li>
<li><a href="">訊息管理3</a></li>
<li><a href="">授權管理3</a></li>
</ol>
</dd>
</dl>
</li>
</ul>
</div>
<div class="layui-body">
<!-- 內容主體區域 -->
<div style="padding: 15px;">內容主體區域</div>
</div>
<div class="layui-footer">
<!-- 底部固定區域 -->
© layui.com - 底部固定區域
</div>
</div>
<script>
//JavaScript程式碼區域
layui.use(['element','jquery'], function(){
var element = layui.element,$=layui.jquery;
$(".layui-nav-third-child").hide();
$(".third-class").on('click',function () {
$(".layui-nav-third-child").hide();
$(this).next().show();
});
});
</script>
</body>
</html>
style中是重寫了layui的全域性樣式,為了調節需要的顏色可忽略,思路是依照layui樣式的顯現關係,通過控制third-child的顯示隱藏達到三級選單的目的。需要引用小箭頭的只需引入layui-tab-more,建議去看看他的實現方式,作為一個javaer我是沒想到小三角還能如此簡單的實現。