Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.
 
 
 
 
 
 

269 строки
8.2 KiB

  1. @{
  2. ViewBag.Title = "title";
  3. Layout = "~/Views/Shared/_Index.cshtml";
  4. }
  5. @Html.AppendJsFile("~/Views/LR_Content/script/lr-clientdata.js")
  6. <style type="text/css">
  7. body {
  8. padding: 10px;
  9. }
  10. .lr-desktop-panel {
  11. position: relative;
  12. width: 100%;
  13. height: 100%;
  14. background-color: #fff;
  15. border: 1px solid #ccc;
  16. padding: 15px 20px;
  17. border-radius: 3px;
  18. }
  19. .navTitle {
  20. font-size: 18px;
  21. background: #EDF6FB;
  22. color: #414045;
  23. line-height: 24px;
  24. padding: 15px;
  25. }
  26. .navTitle i {
  27. /*color: #6A9AE1;*/
  28. font-size: 18px;
  29. margin-right: 5px;
  30. position: relative;
  31. top: 2px;
  32. }
  33. .navRow {
  34. overflow: hidden;
  35. margin: 0 -8px;
  36. }
  37. .navCon {
  38. display: none;
  39. }
  40. .navCon.active{
  41. display: block;
  42. }
  43. .navClo6 {
  44. margin-top: 22px;
  45. padding: 0 8px;
  46. float: left;
  47. width: 16.666667%;
  48. }
  49. .navBox {
  50. background: #7299E4;
  51. border-radius: 6px;
  52. overflow: hidden;
  53. height: 126px;
  54. border: 1px solid #7299E4;
  55. position: relative;
  56. cursor: pointer;
  57. }
  58. .navT {
  59. padding: 20px;
  60. font-size: 18px;
  61. line-height: 24px;
  62. color: #fff;
  63. }
  64. .navT i {
  65. font-size: 18px;
  66. margin-right: 20px;
  67. position: relative;
  68. /*top: 2px;*/
  69. }
  70. .navMore {
  71. background: #fff;
  72. min-height: 15px;
  73. line-height: 50px;
  74. padding: 0 20px;
  75. position: absolute;
  76. bottom: 0;
  77. left: 0;
  78. right: 0;
  79. text-align: right;
  80. color: #7299E4;
  81. height: 50px;
  82. }
  83. .navMore i {
  84. margin-left: 5px;
  85. }
  86. .navTitle .fa-angle-left{
  87. width: 24px;
  88. height: 24px;
  89. opacity: .3;
  90. line-height: 24px;
  91. text-align: center;
  92. background: #fff;
  93. color: #666;
  94. border-radius: 3px;
  95. margin-right: 25px;
  96. top: 0px;
  97. }
  98. .navCons .navMore{
  99. text-align: center;
  100. }
  101. .navCons .navT{
  102. text-align: right;
  103. }
  104. .navCons .navT > *{
  105. display: block;
  106. }
  107. .navCons .navT > i {
  108. font-size: 30px;
  109. margin-right: 0;
  110. margin-bottom: 10px;
  111. }
  112. .navCons .navBox{
  113. height: 156px;
  114. }
  115. </style>
  116. <div class="lr-desktop-panel lr-scroll-wrap" style="overflow: auto;">
  117. <div class="nav"></div>
  118. </div>
  119. <script>
  120. var id = request('id');
  121. var colorArr = ['#7299E4', '#52BED2', '#4EC586', '#DDC04A', '#DD964A', '#DD6D4A', '#E4474D', '#B658D1', '#8564D8',
  122. '#6467D8', '#468BD1', '#7299E4', '#52BED2', '#4EC586', '#DDC04A', '#DD964A', '#DD6D4A', '#E4474D', '#B658D1'
  123. ];
  124. var modulesTree = top.learun.clientdata.get(['modulesTree']);
  125. var parentId = '0';
  126. var modules = modulesTree[parentId] || [];
  127. $('.nav').on('click', '.navMoreBox .navMore', function(){//查看更多
  128. var id = $(this).parents('.navBox').attr('id');
  129. $('.navCon').css('display', 'none').removeClass('active');
  130. $('.navCon[parentid="'+ id +'"]').addClass('active').fadeIn();
  131. }).on('click', '.navTitle .fa-angle-left', function(){//返回上一页
  132. var id = $(this).parents('.navCon').attr('parentid');
  133. $('.navCon').css('display', 'none').removeClass('active');
  134. $('#' + id).parents('.navCon').addClass('active').fadeIn();
  135. }).on('click', '.navBox', function(){//跳转页面
  136. if(!$(this).hasClass('navMoreBox')){
  137. var $obj = $(this);
  138. var id = $obj.attr('id');
  139. var _module = top.learun.clientdata.get(['modulesMap', id]);
  140. switch (_module.F_Target) {
  141. case 'iframe':// 窗口
  142. if (top.learun.validator.isNotNull(_module.F_UrlAddress).code) {
  143. top.learun.frameTab.open(_module);
  144. }
  145. break;
  146. case 'open':// 窗口
  147. var newWin = window.open(_module.F_UrlAddress);
  148. newWin.location.replace(_module.F_UrlAddress);
  149. break;
  150. }
  151. }
  152. })
  153. var $firstmenus = $('.nav');
  154. for (var i = 0, l = modules.length; i < l; i++) {
  155. var item = modules[i];
  156. if(item.F_ModuleId == id){
  157. if (item.F_IsMenu == 1) {
  158. // 第二级菜单
  159. var secondModules = modulesTree[item.F_ModuleId] || [];
  160. var $secondMenus = $('<div class="navRow" parentid="'+ item.F_ModuleId +'"></div>');
  161. var $secondMenux = $('<div class="navCon active" num="2" parentid="'+ item.F_ModuleId +'"><div class="navTitle"><i class="'+ item.F_Icon +'"></i>'+ item.F_FullName +'</div></div>');
  162. var secondMenuHad = false;
  163. for (var j = 0, sl = secondModules.length; j < sl; j++) {
  164. var secondItem = secondModules[j];
  165. if (secondItem.F_IsMenu == 1) {
  166. secondMenuHad = true;
  167. var $secondMenuItem = $('<div class="navClo6"></div>');
  168. var color = colorArr[j];
  169. if (!!secondItem.F_Description) {
  170. $secondMenuItem.attr('title', secondItem.F_Description);
  171. }
  172. var threeModules = modulesTree[secondItem.F_ModuleId] || [];
  173. var $threeMenus = $('<div class="navRow"></div>');
  174. var $threeMenux = $('<div class="navCon navCons" num="3" parentid="'+ secondItem.F_ModuleId +'"><div class="navTitle" style="background: '+ color +';color:#fff"><i class="fa fa-angle-left"></i><i class="'+ secondItem.F_Icon +'"></i>'+ secondItem.F_FullName +'</div></div>');
  175. var threeMenuHad = false;
  176. var secondClassName = '', secondMore = '';
  177. if(threeModules.length != 0){
  178. secondClassName = 'navMoreBox', secondMore = '展开更多 <i class="fa fa-caret-right"></i>';
  179. }
  180. var secondItemHtml = '<div class="navBox '+ secondClassName +'" id="' + secondItem.F_ModuleId + '" style="background: '+ color +';border-color:'+ color +';">'+
  181. '<div class="navT">'+
  182. '<i class="'+ secondItem.F_Icon +' lr-menu-item-icon"></i><span>'+ secondItem.F_FullName +'</span>'+
  183. '</div>'+
  184. '<div class="navMore" style="color:'+ color +'">'+ secondMore +'</div>'+
  185. '</div>';
  186. $secondMenuItem.append(secondItemHtml);
  187. // 第三级菜单
  188. for (var m = 0, tl = threeModules.length; m < tl; m++) {
  189. var threeItem = threeModules[m];
  190. if (threeItem.F_IsMenu == 1) {
  191. threeMenuHad = true;
  192. var $threeMenuItem = $('<div class="navClo6"></div>');
  193. var fourModules = modulesTree[threeItem.F_ModuleId] || [];
  194. var $fourMenus = $('<div class="navRow"></div>');
  195. var $fourMenux = $('<div class="navCon navCons" num="4" parentid="'+ threeItem.F_ModuleId +'"><div class="navTitle" style="background: '+ color +';color:#fff"><i class="fa fa-angle-left"></i><i class="'+ threeItem.F_Icon +'"></i>'+ threeItem.F_FullName +'</div></div>');
  196. var fourMenuHad = false;
  197. var threeClassName = '', threeMore = '';
  198. if(fourModules.length != 0){
  199. threeClassName = 'navMoreBox', threeMore = '展开更多 <i class="fa fa-caret-right"></i>';
  200. }
  201. var threeItemHtml = '<div class="navBox '+ threeClassName +'" id="' + threeItem.F_ModuleId + '" style="background: '+ color +';border-color:'+ color +';">'+
  202. '<div class="navT">'+
  203. '<i class="'+ threeItem.F_Icon +' lr-menu-item-icon"></i><span>'+ threeItem.F_FullName +'</span>'+
  204. '</div>'+
  205. '<div class="navMore">'+ threeMore +'</div>'+
  206. '</div>';
  207. $threeMenuItem.append(threeItemHtml);
  208. //第四级菜单
  209. for (var n = 0, fl = fourModules.length; n < fl; n++) {
  210. var fourItem = fourModules[n];
  211. if (fourItem.F_IsMenu == 1) {
  212. fourMenuHad = true;
  213. var $fourMenuItem = $('<div class="navClo6"></div>');
  214. var fourItemHtml = '<div class="navBox" id="' + fourItem.F_ModuleId + '" style="background: '+ color +';border-color:'+ color +';">'+
  215. '<div class="navT">'+
  216. '<i class="'+ fourItem.F_Icon +' lr-menu-item-icon"></i><span>'+ fourItem.F_FullName +'</span>'+
  217. '</div>'+
  218. '<div class="navMore"></div>'+
  219. '</div>';
  220. $fourMenuItem.append(fourItemHtml);
  221. $fourMenus.append($fourMenuItem);
  222. }
  223. }
  224. if (fourMenuHad) {
  225. $fourMenux.append($fourMenus);
  226. $firstmenus.append($fourMenux);
  227. }
  228. $threeMenus.append($threeMenuItem);
  229. }
  230. }
  231. if (threeMenuHad) {
  232. $threeMenux.append($threeMenus);
  233. $firstmenus.append($threeMenux);
  234. }
  235. $secondMenus.append($secondMenuItem);
  236. }
  237. }
  238. if (secondMenuHad) {
  239. $secondMenux.append($secondMenus);
  240. $firstmenus.append($secondMenux);
  241. }
  242. }
  243. break;
  244. }
  245. }
  246. </script>