index.js 24 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666
  1. /**
  2. * 首页方法封装处理
  3. * Copyright (c) 2019
  4. */
  5. var isMobile = false;
  6. var sidebarHeight = isMobile ? '100%' : '96%';
  7. $(function() {
  8. // MetsiMenu
  9. $('#side-menu').metisMenu();
  10. // 固定菜单栏
  11. $('.sidebar-collapse').slimScroll({
  12. height: sidebarHeight,
  13. railOpacity: 0.9,
  14. alwaysVisible: false
  15. });
  16. // 菜单切换
  17. $('.navbar-minimalize').click(function() {
  18. if (isMobile) {
  19. $("body").toggleClass("canvas-menu");
  20. } else {
  21. $("body").toggleClass("mini-navbar");
  22. }
  23. SmoothlyMenu();
  24. });
  25. $('#side-menu>li').click(function() {
  26. if ($('body').hasClass('canvas-menu mini-navbar')) {
  27. NavToggle();
  28. }
  29. });
  30. $('#side-menu>li li a:not(:has(span))').click(function() {
  31. if ($(window).width() < 769) {
  32. NavToggle();
  33. }
  34. });
  35. $('.nav-close').click(NavToggle);
  36. //ios浏览器兼容性处理
  37. if (/(iPhone|iPad|iPod|iOS)/i.test(navigator.userAgent)) {
  38. $('#content-main').css('overflow-y', 'auto');
  39. }
  40. });
  41. $(window).bind("load resize", function() {
  42. isMobile = $.common.isMobile() || $(window).width() < 769;
  43. if (isMobile) {
  44. $('body').addClass('canvas-menu');
  45. $("body").removeClass("mini-navbar");
  46. $("nav .logo").addClass("hide");
  47. $(".slimScrollDiv").css({ "overflow": "hidden" });
  48. $('.navbar-static-side').fadeOut();
  49. } else {
  50. if ($('body').hasClass('canvas-menu')) {
  51. $('body').addClass('fixed-sidebar');
  52. $('body').removeClass('canvas-menu');
  53. $("body").removeClass("mini-navbar");
  54. $("nav .logo").removeClass("hide");
  55. $(".slimScrollDiv").css({ "overflow": "visible" });
  56. $('.navbar-static-side').fadeIn();
  57. }
  58. }
  59. });
  60. function openToCurrentTab(obj) {
  61. if (isScrollToTop) {
  62. $(obj).show().siblings('.Health_iframe').hide();
  63. } else {
  64. $(obj).css({"visibility": "visible", "position": "static"}).siblings('.Health_iframe').css({"visibility": "hidden", "position": "absolute"});
  65. }
  66. }
  67. function syncMenuTab(dataId) {
  68. if (isLinkage) {
  69. var $dataObj = $('a[href$="' + decodeURI(dataId) + '"]');
  70. if ($dataObj.attr("class") != null && !$dataObj.hasClass("noactive")) {
  71. $('.tab-pane li').removeClass("active");
  72. $('.nav ul').removeClass("in");
  73. $dataObj.parents("ul").addClass("in")
  74. $dataObj.parents("li").addClass("active").siblings().removeClass("active").find('li').removeClass("active");
  75. $dataObj.parents("ul").css('height', 'auto').height();
  76. $(".nav ul li, .nav li").removeClass("selected");
  77. $dataObj.parent("li").addClass("selected");
  78. setIframeUrl(dataId);
  79. // 顶部菜单同步处理
  80. var tabStr = $dataObj.parents(".tab-pane").attr("id");
  81. if ($.common.isNotEmpty(tabStr)) {
  82. var sepIndex = tabStr.lastIndexOf('_');
  83. var menuId = tabStr.substring(sepIndex + 1, tabStr.length);
  84. $("#tab_" + menuId + " a").click();
  85. }
  86. }
  87. }
  88. }
  89. function NavToggle() {
  90. $('.navbar-minimalize').trigger('click');
  91. }
  92. function fixedSidebar() {
  93. $('#side-menu').hide();
  94. $("nav .logo").addClass("hide");
  95. setTimeout(function() {
  96. $('#side-menu').fadeIn(500);
  97. }, 100);
  98. }
  99. // 设置锚点
  100. function setIframeUrl(href) {
  101. if ($.common.equals("history", mode)) {
  102. storage.set('publicPath', href);
  103. } else {
  104. var nowUrl = window.location.href;
  105. var newUrl = nowUrl.substring(0, nowUrl.indexOf("#"));
  106. window.location.href = newUrl + "#" + href;
  107. }
  108. }
  109. function SmoothlyMenu() {
  110. if (isMobile && !$('body').hasClass('canvas-menu')) {
  111. $('.navbar-static-side').fadeIn();
  112. fixedSidebar();
  113. } else if (!isMobile &&!$('body').hasClass('mini-navbar')) {
  114. fixedSidebar();
  115. $("nav .logo").removeClass("hide");
  116. } else if (isMobile && $('body').hasClass('fixed-sidebar')) {
  117. $('.navbar-static-side').fadeOut();
  118. fixedSidebar();
  119. } else if (!isMobile && $('body').hasClass('fixed-sidebar')) {
  120. fixedSidebar();
  121. } else {
  122. $('#side-menu').removeAttr('style');
  123. }
  124. }
  125. /**
  126. * iframe处理
  127. */
  128. $(function() {
  129. //计算元素集合的总宽度
  130. function calSumWidth(elements) {
  131. var width = 0;
  132. $(elements).each(function() {
  133. width += $(this).outerWidth(true);
  134. });
  135. return width;
  136. }
  137. // 激活指定选项卡
  138. function setActiveTab(element) {
  139. if (!$(element).hasClass('active')) {
  140. var currentId = $(element).data('id');
  141. syncMenuTab(currentId);
  142. // 显示tab对应的内容区
  143. $('.Health_iframe').each(function() {
  144. if ($(this).data('id') == currentId) {
  145. openToCurrentTab(this);
  146. }
  147. });
  148. $(element).addClass('active').siblings('.menuTab').removeClass('active');
  149. scrollToTab(element);
  150. }
  151. }
  152. //滚动到指定选项卡
  153. function scrollToTab(element) {
  154. var marginLeftVal = calSumWidth($(element).prevAll()),
  155. marginRightVal = calSumWidth($(element).nextAll());
  156. // 可视区域非tab宽度
  157. var tabOuterWidth = calSumWidth($(".content-tabs").children().not(".menuTabs"));
  158. //可视区域tab宽度
  159. var visibleWidth = $(".content-tabs").outerWidth(true) - tabOuterWidth;
  160. //实际滚动宽度
  161. var scrollVal = 0;
  162. if ($(".page-tabs-content").outerWidth() < visibleWidth) {
  163. scrollVal = 0;
  164. } else if (marginRightVal <= (visibleWidth - $(element).outerWidth(true) - $(element).next().outerWidth(true))) {
  165. if ((visibleWidth - $(element).next().outerWidth(true)) > marginRightVal) {
  166. scrollVal = marginLeftVal;
  167. var tabElement = element;
  168. while ((scrollVal - $(tabElement).outerWidth()) > ($(".page-tabs-content").outerWidth() - visibleWidth)) {
  169. scrollVal -= $(tabElement).prev().outerWidth();
  170. tabElement = $(tabElement).prev();
  171. }
  172. }
  173. } else if (marginLeftVal > (visibleWidth - $(element).outerWidth(true) - $(element).prev().outerWidth(true))) {
  174. scrollVal = marginLeftVal - $(element).prev().outerWidth(true);
  175. }
  176. $('.page-tabs-content').animate({ marginLeft: 0 - scrollVal + 'px' }, "fast");
  177. }
  178. //查看左侧隐藏的选项卡
  179. function scrollTabLeft() {
  180. var marginLeftVal = Math.abs(parseInt($('.page-tabs-content').css('margin-left')));
  181. // 可视区域非tab宽度
  182. var tabOuterWidth = calSumWidth($(".content-tabs").children().not(".menuTabs"));
  183. //可视区域tab宽度
  184. var visibleWidth = $(".content-tabs").outerWidth(true) - tabOuterWidth;
  185. //实际滚动宽度
  186. var scrollVal = 0;
  187. if (($(".page-tabs-content").width()) < visibleWidth) {
  188. return false;
  189. } else {
  190. var tabElement = $(".menuTab:first");
  191. var offsetVal = 0;
  192. while ((offsetVal + $(tabElement).outerWidth(true)) <= marginLeftVal) { //找到离当前tab最近的元素
  193. offsetVal += $(tabElement).outerWidth(true);
  194. tabElement = $(tabElement).next();
  195. }
  196. offsetVal = 0;
  197. if (calSumWidth($(tabElement).prevAll()) > visibleWidth) {
  198. while ((offsetVal + $(tabElement).outerWidth(true)) < (visibleWidth) && tabElement.length > 0) {
  199. offsetVal += $(tabElement).outerWidth(true);
  200. tabElement = $(tabElement).prev();
  201. }
  202. scrollVal = calSumWidth($(tabElement).prevAll());
  203. }
  204. }
  205. $('.page-tabs-content').animate({ marginLeft: 0 - scrollVal + 'px' }, "fast");
  206. }
  207. //查看右侧隐藏的选项卡
  208. function scrollTabRight() {
  209. var marginLeftVal = Math.abs(parseInt($('.page-tabs-content').css('margin-left')));
  210. // 可视区域非tab宽度
  211. var tabOuterWidth = calSumWidth($(".content-tabs").children().not(".menuTabs"));
  212. //可视区域tab宽度
  213. var visibleWidth = $(".content-tabs").outerWidth(true) - tabOuterWidth;
  214. //实际滚动宽度
  215. var scrollVal = 0;
  216. if ($(".page-tabs-content").width() < visibleWidth) {
  217. return false;
  218. } else {
  219. var tabElement = $(".menuTab:first");
  220. var offsetVal = 0;
  221. while ((offsetVal + $(tabElement).outerWidth(true)) <= marginLeftVal) { //找到离当前tab最近的元素
  222. offsetVal += $(tabElement).outerWidth(true);
  223. tabElement = $(tabElement).next();
  224. }
  225. offsetVal = 0;
  226. while ((offsetVal + $(tabElement).outerWidth(true)) < (visibleWidth) && tabElement.length > 0) {
  227. offsetVal += $(tabElement).outerWidth(true);
  228. tabElement = $(tabElement).next();
  229. }
  230. scrollVal = calSumWidth($(tabElement).prevAll());
  231. if (scrollVal > 0) {
  232. $('.page-tabs-content').animate({ marginLeft: 0 - scrollVal + 'px' }, "fast");
  233. }
  234. }
  235. }
  236. //通过遍历给菜单项加上data-index属性
  237. $(".menuItem").each(function(index) {
  238. if (!$(this).attr('data-index')) {
  239. $(this).attr('data-index', index);
  240. }
  241. });
  242. function menuItem() {
  243. // 获取标识数据
  244. var dataUrl = $(this).attr('href'),
  245. dataIndex = $(this).data('index'),
  246. menuName = $(this).data('title') || $.trim($(this).text()),
  247. isRefresh = $(this).data("refresh"),
  248. flag = true;
  249. var $dataObj = $('a[href$="' + decodeURI(dataUrl) + '"]');
  250. if (!$dataObj.hasClass("noactive")) {
  251. $('.tab-pane li').removeClass("active");
  252. $('.nav ul').removeClass("in");
  253. $dataObj.parents("ul").addClass("in")
  254. $dataObj.parents("li").addClass("active").siblings().removeClass("active").find('li').removeClass("active");
  255. $dataObj.parents("ul").css('height', 'auto').height();
  256. $(".nav ul li, .nav li").removeClass("selected");
  257. $(this).parent("li").addClass("selected");
  258. }
  259. setIframeUrl(dataUrl);
  260. if (dataUrl == undefined || $.trim(dataUrl).length == 0) return false;
  261. // 选项卡菜单已存在
  262. $('.menuTab').each(function() {
  263. if ($(this).data('id') == dataUrl) {
  264. if (!$(this).hasClass('active')) {
  265. $(this).addClass('active').siblings('.menuTab').removeClass('active');
  266. scrollToTab(this);
  267. // 显示tab对应的内容区
  268. $('.mainContent .Health_iframe').each(function() {
  269. if ($(this).data('id') == dataUrl) {
  270. openToCurrentTab(this);
  271. return false;
  272. }
  273. });
  274. }
  275. if (isRefresh) {
  276. refreshTab();
  277. }
  278. flag = false;
  279. return false;
  280. }
  281. });
  282. // 选项卡菜单不存在
  283. if (flag) {
  284. var str = '<a href="javascript:;" class="active menuTab" data-id="' + dataUrl + '">' + menuName + ' <i class="fa fa-times-circle"></i></a>';
  285. $('.menuTab').removeClass('active');
  286. // 添加选项卡对应的iframe
  287. var str1 = '<iframe class="Health_iframe" name="iframe' + dataIndex + '" width="100%" height="100%" src="' + dataUrl + '" frameborder="0" data-id="' + dataUrl + '" data-refresh="' + isRefresh + '" seamless></iframe>';
  288. if (isScrollToTop) {
  289. $('.mainContent').find('iframe.Health_iframe').hide().parents('.mainContent').append(str1);
  290. } else {
  291. $('.mainContent').find('iframe.Health_iframe').css({"visibility": "hidden", "position": "absolute"}).parents('.mainContent').append(str1);
  292. }
  293. $.modal.loading("数据加载中,请稍候...");
  294. $('.mainContent iframe:visible').on('load', function() {
  295. $.modal.closeLoading();
  296. });
  297. // 添加选项卡
  298. $('.menuTabs .page-tabs-content').append(str);
  299. scrollToTab($('.menuTab.active'));
  300. }
  301. return false;
  302. }
  303. function menuBlank() {
  304. // 新窗口打开外网以http://开头,如http://a.vip
  305. var dataUrl = $(this).attr('href');
  306. window.open(dataUrl);
  307. return false;
  308. }
  309. $('.menuItem').on('click', menuItem);
  310. $('.menuBlank').on('click', menuBlank);
  311. // 关闭选项卡菜单
  312. function closeTab() {
  313. var closeTabId = $(this).parents('.menuTab').data('id');
  314. var currentWidth = $(this).parents('.menuTab').width();
  315. var panelUrl = $(this).parents('.menuTab').data('panel');
  316. // 当前元素处于活动状态
  317. if ($(this).parents('.menuTab').hasClass('active')) {
  318. // 当前元素后面有同辈元素,使后面的一个元素处于活动状态
  319. if ($(this).parents('.menuTab').next('.menuTab').length) {
  320. var activeId = $(this).parents('.menuTab').next('.menuTab:eq(0)').data('id');
  321. $(this).parents('.menuTab').next('.menuTab:eq(0)').addClass('active');
  322. $('.mainContent .Health_iframe').each(function() {
  323. if ($(this).data('id') == activeId) {
  324. openToCurrentTab(this);
  325. return false;
  326. }
  327. });
  328. var marginLeftVal = parseInt($('.page-tabs-content').css('margin-left'));
  329. if (marginLeftVal < 0) {
  330. $('.page-tabs-content').animate({ marginLeft: (marginLeftVal + currentWidth) + 'px' }, "fast");
  331. }
  332. // 移除当前选项卡
  333. $(this).parents('.menuTab').remove();
  334. // 移除tab对应的内容区
  335. $('.mainContent .Health_iframe').each(function() {
  336. if ($(this).data('id') == closeTabId) {
  337. $(this).remove();
  338. return false;
  339. }
  340. });
  341. }
  342. // 当前元素后面没有同辈元素,使当前元素的上一个元素处于活动状态
  343. if ($(this).parents('.menuTab').prev('.menuTab').length) {
  344. var activeId = $(this).parents('.menuTab').prev('.menuTab:last').data('id');
  345. $(this).parents('.menuTab').prev('.menuTab:last').addClass('active');
  346. $('.mainContent .Health_iframe').each(function() {
  347. if ($(this).data('id') == activeId) {
  348. openToCurrentTab(this);
  349. return false;
  350. }
  351. });
  352. // 移除当前选项卡
  353. $(this).parents('.menuTab').remove();
  354. // 移除tab对应的内容区
  355. $('.mainContent .Health_iframe').each(function() {
  356. if ($(this).data('id') == closeTabId) {
  357. $(this).remove();
  358. return false;
  359. }
  360. });
  361. if ($.common.isNotEmpty(panelUrl)) {
  362. $('.menuTab[data-id="' + panelUrl + '"]').addClass('active').siblings('.menuTab').removeClass('active');
  363. $('.mainContent .Health_iframe').each(function() {
  364. if ($(this).data('id') == panelUrl) {
  365. openToCurrentTab(this);
  366. return false;
  367. }
  368. });
  369. }
  370. }
  371. }
  372. // 当前元素不处于活动状态
  373. else {
  374. // 移除当前选项卡
  375. $(this).parents('.menuTab').remove();
  376. // 移除相应tab对应的内容区
  377. $('.mainContent .Health_iframe').each(function() {
  378. if ($(this).data('id') == closeTabId) {
  379. $(this).remove();
  380. return false;
  381. }
  382. });
  383. }
  384. scrollToTab($('.menuTab.active'));
  385. syncMenuTab($.common.isNotEmpty(panelUrl) ? panelUrl : $('.page-tabs-content').find('.active').attr('data-id'));
  386. return false;
  387. }
  388. $('.menuTabs').on('click', '.menuTab i', closeTab);
  389. //滚动到已激活的选项卡
  390. function showActiveTab() {
  391. scrollToTab($('.menuTab.active'));
  392. }
  393. $('.tabShowActive').on('click', showActiveTab);
  394. // 点击选项卡菜单
  395. function activeTab() {
  396. if (!$(this).hasClass('active')) {
  397. var currentId = $(this).data('id');
  398. var isRefresh = false;
  399. syncMenuTab(currentId);
  400. // 显示tab对应的内容区
  401. $('.mainContent .Health_iframe').each(function() {
  402. if ($(this).data('id') == currentId) {
  403. openToCurrentTab(this);
  404. isRefresh = $.common.nullToDefault($(this).data('refresh'), false);
  405. return false;
  406. }
  407. });
  408. $(this).addClass('active').siblings('.menuTab').removeClass('active');
  409. if (isRefresh) {
  410. refreshTab();
  411. }
  412. scrollToTab(this);
  413. }
  414. }
  415. // 点击选项卡菜单
  416. $('.menuTabs').on('click', '.menuTab', activeTab);
  417. // 刷新iframe
  418. function refreshTab() {
  419. var currentId = $('.page-tabs-content').find('.active').attr('data-id');
  420. var target = $('.Health_iframe[data-id="' + currentId + '"]');
  421. var url = target.attr('src');
  422. target.attr('src', url).ready();
  423. }
  424. // 页签全屏
  425. function fullScreenTab() {
  426. var currentId = $('.page-tabs-content').find('.active').attr('data-id');
  427. var target = $('.Health_iframe[data-id="' + currentId + '"]');
  428. target.fullScreen(true);
  429. }
  430. // 关闭当前选项卡
  431. function tabCloseCurrent() {
  432. $('.page-tabs-content').find('.active i').trigger("click");
  433. }
  434. //关闭其他选项卡
  435. function tabCloseOther() {
  436. $('.page-tabs-content').children("[data-id]").not(":first").not(".active").each(function() {
  437. $('.Health_iframe[data-id="' + $(this).data('id') + '"]').remove();
  438. $(this).remove();
  439. });
  440. $('.page-tabs-content').animate({ marginLeft: '0px' }, "fast");
  441. }
  442. // 关闭全部选项卡
  443. function tabCloseAll() {
  444. $('.page-tabs-content').children("[data-id]").not(":first").each(function() {
  445. $('.Health_iframe[data-id="' + $(this).data('id') + '"]').remove();
  446. $(this).remove();
  447. });
  448. $('.page-tabs-content').children("[data-id]:first").each(function() {
  449. if (isScrollToTop) {
  450. $('.Health_iframe[data-id="' + $(this).data('id') + '"]').show();
  451. } else {
  452. $('.Health_iframe[data-id="' + $(this).data('id') + '"]').css({"visibility": "visible", "position": "static"});
  453. }
  454. $(this).addClass("active");
  455. });
  456. $('.page-tabs-content').css("margin-left", "0");
  457. syncMenuTab($('.page-tabs-content').find('.active').attr('data-id'));
  458. }
  459. // 全屏显示
  460. $('#fullScreen').on('click', function () {
  461. $(document).toggleFullScreen();
  462. });
  463. // 锁定屏幕
  464. $('#lockScreen').on('click', function () {
  465. storage.set('lockPath', $('.page-tabs-content').find('.active').attr('data-id'));
  466. location.href = ctx + "lockscreen";
  467. });
  468. // 页签刷新按钮
  469. $('.tabReload').on('click', refreshTab);
  470. // 页签全屏按钮
  471. $('.tabFullScreen').on('click', fullScreenTab);
  472. // 双击选项卡全屏显示
  473. $('.menuTabs').on('dblclick', '.menuTab', activeTabMax);
  474. // 左移按扭
  475. $('.tabLeft').on('click', scrollTabLeft);
  476. // 右移按扭
  477. $('.tabRight').on('click', scrollTabRight);
  478. // 关闭当前
  479. $('.tabCloseCurrent').on('click', tabCloseCurrent);
  480. // 关闭其他
  481. $('.tabCloseOther').on('click', tabCloseOther);
  482. // 关闭全部
  483. $('.tabCloseAll').on('click', tabCloseAll);
  484. // tab全屏显示
  485. $('.tabMaxCurrent').on('click', function () {
  486. $('.page-tabs-content').find('.active').trigger("dblclick");
  487. });
  488. // 关闭全屏
  489. $('#ax_close_max').click(function(){
  490. $('#content-main').toggleClass('max');
  491. $('#ax_close_max').hide();
  492. })
  493. // 双击选项卡全屏显示
  494. function activeTabMax() {
  495. $('#content-main').toggleClass('max');
  496. $('#ax_close_max').show();
  497. }
  498. $(window).keydown(function(event) {
  499. if (event.keyCode == 27) {
  500. $('#content-main').removeClass('max');
  501. $('#ax_close_max').hide();
  502. }
  503. });
  504. window.onhashchange = function() {
  505. var hash = location.hash;
  506. var url = hash.substring(1, hash.length);
  507. $('a[href$="' + url + '"]').click();
  508. };
  509. // 右键菜单实现
  510. $.contextMenu({
  511. selector: ".menuTab",
  512. trigger: 'right',
  513. autoHide: true,
  514. items: {
  515. "close_current": {
  516. name: "关闭当前",
  517. icon: "fa-close",
  518. callback: function(key, opt) {
  519. opt.$trigger.find('i').trigger("click");
  520. }
  521. },
  522. "close_other": {
  523. name: "关闭其他",
  524. icon: "fa-window-close-o",
  525. callback: function(key, opt) {
  526. setActiveTab(this);
  527. tabCloseOther();
  528. }
  529. },
  530. "close_left": {
  531. name: "关闭左侧",
  532. icon: "fa-reply",
  533. callback: function(key, opt) {
  534. setActiveTab(this);
  535. this.prevAll('.menuTab').not(":last").each(function() {
  536. if ($(this).hasClass('active')) {
  537. setActiveTab(this);
  538. }
  539. $('.Health_iframe[data-id="' + $(this).data('id') + '"]').remove();
  540. $(this).remove();
  541. });
  542. $('.page-tabs-content').animate({ marginLeft: '0px' }, "fast");
  543. }
  544. },
  545. "close_right": {
  546. name: "关闭右侧",
  547. icon: "fa-share",
  548. callback: function(key, opt) {
  549. setActiveTab(this);
  550. this.nextAll('.menuTab').each(function() {
  551. $('.Health_iframe[data-id="' + $(this).data('id') + '"]').remove();
  552. $(this).remove();
  553. });
  554. }
  555. },
  556. "close_all": {
  557. name: "全部关闭",
  558. icon: "fa-window-close",
  559. callback: function(key, opt) {
  560. tabCloseAll();
  561. }
  562. },
  563. "step": "---------",
  564. "full": {
  565. name: "全屏显示",
  566. icon: "fa-arrows-alt",
  567. callback: function(key, opt) {
  568. setActiveTab(this);
  569. var target = $('.Health_iframe[data-id="' + this.data('id') + '"]');
  570. target.fullScreen(true);
  571. }
  572. },
  573. "refresh": {
  574. name: "刷新页面",
  575. icon: "fa-refresh",
  576. callback: function(key, opt) {
  577. setActiveTab(this);
  578. var target = $('.Health_iframe[data-id="' + this.data('id') + '"]');
  579. var url = target.attr('src');
  580. $.modal.loading("数据加载中,请稍候...");
  581. target.attr('src', url).on('load', function() {
  582. $.modal.closeLoading();
  583. });
  584. }
  585. },
  586. "open": {
  587. name: "新窗口打开",
  588. icon: "fa-link",
  589. callback: function(key, opt) {
  590. var target = $('.Health_iframe[data-id="' + this.data('id') + '"]');
  591. window.open(target.attr('src'));
  592. }
  593. },
  594. }
  595. });
  596. });