layout.html 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199
  1. <div class="layui-layout layui-layout-admin">
  2. <div class="layui-header">
  3. <!-- 头部区域 -->
  4. <ul class="layui-nav layui-layout-left">
  5. <li class="layui-nav-item layadmin-flexible" lay-unselect>
  6. <a href="javascript:;" layadmin-event="flexible" title="侧边伸缩">
  7. <i class="layui-icon layui-icon-shrink-right" id="LAY_app_flexible"></i>
  8. </a>
  9. </li>
  10. <!--<li class="layui-nav-item layui-this layui-hide-xs layui-hide-sm layui-show-md-inline-block">
  11. <a lay-href="" title="">
  12. 控制台
  13. </a>
  14. </li>-->
  15. <li class="layui-nav-item layui-hide-xs" lay-unselect>
  16. <a href="http://www.layui.com/admin/" target="_blank" title="前台">
  17. <i class="layui-icon layui-icon-website"></i>
  18. </a>
  19. </li>
  20. <li class="layui-nav-item" lay-unselect>
  21. <a href="javascript:;" layadmin-event="refresh" title="刷新">
  22. <i class="layui-icon layui-icon-refresh-3"></i>
  23. </a>
  24. </li>
  25. <li class="layui-nav-item layui-hide-xs" lay-unselect>
  26. <input type="text" placeholder="搜索..." autocomplete="off" class="layui-input layui-input-search" layadmin-event="serach" lay-action="template/search/keywords=">
  27. </li>
  28. </ul>
  29. <ul class="layui-nav layui-layout-right" lay-filter="layadmin-layout-right">
  30. <li class="layui-nav-item" lay-unselect>
  31. <a lay-href="app/message/" layadmin-event="message">
  32. <i class="layui-icon layui-icon-notice"></i>
  33. <!-- 如果有新消息,则显示小圆点 -->
  34. <script type="text/html" template lay-url="./json/message/new.js">
  35. {{# if(d.data.newmsg){ }}
  36. <span class="layui-badge-dot"></span>
  37. {{# } }}
  38. </script>
  39. </a>
  40. </li>
  41. <li class="layui-nav-item layui-hide-xs" lay-unselect>
  42. <a href="javascript:;" layadmin-event="theme">
  43. <i class="layui-icon layui-icon-theme"></i>
  44. </a>
  45. </li>
  46. <li class="layui-nav-item layui-hide-xs" lay-unselect>
  47. <a href="javascript:;" layadmin-event="note">
  48. <i class="layui-icon layui-icon-note"></i>
  49. </a>
  50. </li>
  51. <li class="layui-nav-item layui-hide-xs" lay-unselect>
  52. <a href="javascript:;" layadmin-event="fullscreen">
  53. <i class="layui-icon layui-icon-screen-full"></i>
  54. </a>
  55. </li>
  56. <li class="layui-nav-item" lay-unselect>
  57. <script type="text/html" template lay-url="./json/user/session.js"
  58. lay-done="layui.element.render('nav', 'layadmin-layout-right');">
  59. <a href="javascript:;">
  60. <cite>{{ d.data.username }}</cite>
  61. </a>
  62. <dl class="layui-nav-child">
  63. <dd><a lay-href="set/user/info">基本资料</a></dd>
  64. <dd><a lay-href="set/user/password">修改密码</a></dd>
  65. <hr>
  66. <dd layadmin-event="logout" style="text-align: center;"><a>退出</a></dd>
  67. </dl>
  68. </script>
  69. </li>
  70. <li class="layui-nav-item layui-hide-xs" lay-unselect>
  71. <a href="javascript:;" layadmin-event="about"><i class="layui-icon layui-icon-more-vertical"></i></a>
  72. </li>
  73. <li class="layui-nav-item layui-show-xs-inline-block layui-hide-sm" lay-unselect>
  74. <a href="javascript:;" layadmin-event="more"><i class="layui-icon layui-icon-more-vertical"></i></a>
  75. </li>
  76. </ul>
  77. </div>
  78. <!-- 侧边菜单 -->
  79. <div class="layui-side layui-side-menu">
  80. <div class="layui-side-scroll">
  81. <script type="text/html" template lay-url="./json/menu.js?v={{ layui.admin.v }}"
  82. lay-done="layui.element.render('nav', 'layadmin-system-side-menu');" id="TPL_layout">
  83. <div class="layui-logo" lay-href="">
  84. <span>{{ layui.setter.name || 'layuiAdmin' }}</span>
  85. </div>
  86. <ul class="layui-nav layui-nav-tree" lay-shrink="all" id="LAY-system-side-menu" lay-filter="layadmin-system-side-menu">
  87. {{#
  88. var path = layui.router().path
  89. ,pathURL = layui.admin.correctRouter(path.join('/'))
  90. ,dataName = layui.setter.response.dataName;
  91. layui.each(d[dataName], function(index, item){
  92. var hasChildren = typeof item.list === 'object' && item.list.length > 0
  93. ,classSelected = function(){
  94. var match = path[0] == item.name || (index == 0 && !path[0])
  95. || (item.jump && pathURL == layui.admin.correctRouter(item.jump)) || item.spread;
  96. if(match){
  97. return hasChildren ? 'layui-nav-itemed' : 'layui-this';
  98. }
  99. return '';
  100. }
  101. ,url = (item.jump && typeof item.jump === 'string') ? item.jump : item.name;
  102. }}
  103. <li data-name="{{ item.name || '' }}" data-jump="{{ item.jump || '' }}" class="layui-nav-item {{ classSelected() }}">
  104. <a href="javascript:;" {{ hasChildren ? '' : 'lay-href="'+ url +'"' }} lay-tips="{{ item.title }}" lay-direction="2">
  105. <i class="layui-icon {{ item.icon }}"></i>
  106. <cite>{{ item.title }}</cite>
  107. </a>
  108. {{# if(hasChildren){ }}
  109. <dl class="layui-nav-child">
  110. {{# layui.each(item.list, function(index2, item2){
  111. var hasChildren2 = typeof item2.list == 'object' && item2.list.length > 0
  112. ,classSelected2 = function(){
  113. var match = (path[0] == item.name && path[1] == item2.name)
  114. || (item2.jump && pathURL == layui.admin.correctRouter(item2.jump)) || item2.spread;
  115. if(match){
  116. return hasChildren2 ? 'layui-nav-itemed' : 'layui-this';
  117. }
  118. return '';
  119. }
  120. ,url2 = (item2.jump && typeof item2.jump === 'string')
  121. ? item2.jump
  122. : [item.name, item2.name, ''].join('/');
  123. }}
  124. <dd data-name="{{ item2.name || '' }}" data-jump="{{ item2.jump || '' }}"
  125. {{ classSelected2() ? ('class="'+ classSelected2() +'"') : '' }}>
  126. <a href="javascript:;" {{ hasChildren2 ? '' : 'lay-href="'+ url2 +'"' }}>{{ item2.title }}</a>
  127. {{# if(hasChildren2){ }}
  128. <dl class="layui-nav-child">
  129. {{# layui.each(item2.list, function(index3, item3){
  130. var match = (path[0] == item.name && path[1] == item2.name && path[2] == item3.name)
  131. || (item3.jump && pathURL == layui.admin.correctRouter(item3.jump))
  132. ,url3 = (item3.jump && typeof item3.jump === 'string')
  133. ? item3.jump
  134. : [item.name, item2.name, item3.name].join('/')
  135. }}
  136. <dd data-name="{{ item3.name || '' }}" data-jump="{{ item3.jump || '' }}"
  137. {{ match ? 'class="layui-this"' : '' }}>
  138. <a href="javascript:;" lay-href="{{ url3 }}" {{ item3.iframe ? 'lay-iframe="true"' : '' }}>{{ item3.title }}</a>
  139. </dd>
  140. {{# }); }}
  141. </dl>
  142. {{# } }}
  143. </dd>
  144. {{# }); }}
  145. </dl>
  146. {{# } }}
  147. </li>
  148. {{# }); }}
  149. </ul>
  150. </script>
  151. </div>
  152. </div>
  153. <!-- 页面标签 -->
  154. <script type="text/html" template lay-done="layui.element.render('nav', 'layadmin-pagetabs-nav')">
  155. {{# if(layui.setter.pageTabs){ }}
  156. <div class="layadmin-pagetabs" id="LAY_app_tabs">
  157. <div class="layui-icon layadmin-tabs-control layui-icon-prev" layadmin-event="leftPage"></div>
  158. <div class="layui-icon layadmin-tabs-control layui-icon-next" layadmin-event="rightPage"></div>
  159. <div class="layui-icon layadmin-tabs-control layui-icon-down">
  160. <ul class="layui-nav layadmin-tabs-select" lay-filter="layadmin-pagetabs-nav">
  161. <li class="layui-nav-item" lay-unselect>
  162. <a href="javascript:;"></a>
  163. <dl class="layui-nav-child layui-anim-fadein">
  164. <dd layadmin-event="closeThisTabs"><a href="javascript:;">关闭当前标签页</a></dd>
  165. <dd layadmin-event="closeOtherTabs"><a href="javascript:;">关闭其它标签页</a></dd>
  166. <dd layadmin-event="closeAllTabs"><a href="javascript:;">关闭全部标签页</a></dd>
  167. </dl>
  168. </li>
  169. </ul>
  170. </div>
  171. <div class="layui-tab" lay-unauto lay-allowClose="true" lay-filter="layadmin-layout-tabs">
  172. <ul class="layui-tab-title" id="LAY_app_tabsheader">
  173. <li lay-id="/"><i class="layui-icon layui-icon-home"></i></li>
  174. </ul>
  175. </div>
  176. </div>
  177. {{# } }}
  178. </script>
  179. <!-- 主体内容 -->
  180. <div class="layui-body" id="LAY_app_body">
  181. <div class="layadmin-tabsbody-item layui-show"></div>
  182. </div>
  183. <!-- 辅助元素,一般用于移动设备下遮罩 -->
  184. <div class="layadmin-body-shade" layadmin-event="shade"></div>
  185. </div>