/** * 首页加载完后,取消加载中状态 */ $(window).load(function () { $("#loading").fadeOut(); }); var isFullScreen = false; var App = function () { var setFullScreen = function () { var de = document.documentElement; if (de.requestFullscreen) { de.requestFullscreen(); } else if (de.mozRequestFullScreen) { de.mozRequestFullScreen(); } else if (de.webkitRequestFullScreen) { de.webkitRequestFullScreen(); } else { App.alert({message: "该浏览器不支持全屏!", type: "danger"}); } }; //退出全屏 判断浏览器种类 var exitFullScreen = function () { // 判断各种浏览器,找到正确的方法 var exitMethod = document.exitFullscreen || //W3C document.mozCancelFullScreen || //Chrome等 document.webkitExitFullscreen || //FireFox document.webkitExitFullscreen; //IE11 if (exitMethod) { exitMethod.call(document); } else if (typeof window.ActiveXObject !== "undefined") {//for Internet Explorer var wscript = new ActiveXObject("WScript.Shell"); if (wscript !== null) { wscript.SendKeys("{F11}"); } } }; return { init: function () { }, handleFullScreen: function () { if (isFullScreen) { exitFullScreen(); isFullScreen = false; } else { setFullScreen(); isFullScreen = true; } } }; }; $(function () { $(".collapseMenu").on("click", function () { var p = $("#index_layout").iLayout("panel", "west")[0].clientWidth; if (p > 0) { $('#index_layout').iLayout('collapse', 'west'); $(this).children('span').removeClass('fa-chevron-circle-left').addClass('fa-chevron-circle-right'); } else { $('#index_layout').iLayout('expand', 'west'); $(this).children('span').removeClass('fa-chevron-circle-right').addClass('fa-chevron-circle-left'); } }); // 首页tabs选项卡 var index_tabs = $('#index_tabs').iTabs({ fit: true, tools: [{ iconCls: 'fa fa-home', handler: function () { $('#index_tabs').iTabs('select', 0); } }, { iconCls: 'fa fa-refresh', handler: function () { var refresh_tab = $('#index_tabs').iTabs('getSelected'); var refresh_iframe = refresh_tab.find('iframe')[0]; refresh_iframe.contentWindow.location.href = refresh_iframe.src; //$('#index_tabs').trigger(TOPJUI.eventType.initUI.base); //var index = $('#index_tabs').iTabs('getTabIndex', $('#index_tabs').iTabs('getSelected')); //console.log(index); //$('#index_tabs').iTabs('getTab', index).iPanel('refresh'); } }, { iconCls: 'fa fa-close', handler: function () { var index = $('#index_tabs').iTabs('getTabIndex', $('#index_tabs').iTabs('getSelected')); var tab = $('#index_tabs').iTabs('getTab', index); if (tab.iPanel('options').closable) { $('#index_tabs').iTabs('close', index); } } },{ iconCls: 'fa fa-arrows-alt', handler: function () { App().handleFullScreen(); } }], //监听右键事件,创建右键菜单 onContextMenu: function (e, title, index) { e.preventDefault(); if (index >= 0) { $('#mm').iMenu('show', { left: e.pageX, top: e.pageY }).data("tabTitle", title); } } }); //tab右键菜单 $("#mm").iMenu({ onClick: function (item) { tabMenuOprate(this, item.name); } }); // 初始化accordion $("#RightAccordion").iAccordion({ fit: true, border: false }); // 绑定横向导航菜单点击事件 $(".systemName").on("click", function (e) { //generateMenu(e.currentTarget.dataset.menuid, e.target.textContent); //IE9及以下不兼容data-menuid属性 //generateMenu(e.target.getAttribute('data-menuid'), e.target.textContent); generateMenu($(this).attr("id"), $(this).attr("title")); $(".systemName").removeClass("selected"); $(this).addClass("selected"); }); // 主页打开初始化时显示第一个系统的菜单 $('.systemName').eq('0').trigger('click'); // 显示系统首页 /*setTimeout(function () { var indexTab = []; indexTab.iconCls = "icon-house"; indexTab.text = "系统门户"; var portal = $.getUrlParam("portal"); if (portal == "system" || portal == null) portal = "system"; indexTab.url = "html/portal/index.html"; indexTab.closable = false; indexTab.border = false; addTab(indexTab); }, 1);*/ $("#themeStyle").iDialog({ title: '设置主题风格' }); $("#setThemes").on('click', function () { $("#themeStyle").iDialog('open'); }); // 保存主题 $(".topjuiTheme").on("click", function () { var theme = $('input[name="themes"]:checked').val(); var menu = $('input[name="menustyle"]:checked').val(); var topmenu = $('input[name="topmenu"]').is(':checked'); changeTheme(theme); }); //初始化完成 }); /** * Tab菜单操作 * @param menu * @param type * @returns */ function tabMenuOprate(menu, type) { var allTabs = $('#index_tabs').iTabs('tabs'); var allTabtitle = []; $.each(allTabs, function (i, n) { var opt = $(n).iPanel('options'); if (opt.closable) allTabtitle.push(opt.title); }); var curTabTitle = $(menu).data("tabTitle"); var curTabIndex = $('#index_tabs').iTabs("getTabIndex", $('#index_tabs').iTabs("getTab", curTabTitle)); switch (type) { case "1"://关闭当前 if (curTabIndex > 0) { $('#index_tabs').iTabs("close", curTabTitle); return false; break; } else { $.iMessager.show({ title: '操作提示', msg: '首页不允许关闭!' }); break; } case "2"://全部关闭 for (var i = 0; i < allTabtitle.length; i++) { $('#index_tabs').iTabs('close', allTabtitle[i]); } break; case "3"://除此之外全部关闭 for (var i = 0; i < allTabtitle.length; i++) { if (curTabTitle != allTabtitle[i]) $('#index_tabs').iTabs('close', allTabtitle[i]); } $('#index_tabs').iTabs('select', curTabTitle); break; case "4"://当前侧面右边 for (var i = curTabIndex; i < allTabtitle.length; i++) { $('#index_tabs').iTabs('close', allTabtitle[i]); } $('#index_tabs').iTabs('select', curTabTitle); break; case "5": //当前侧面左边 for (var i = 0; i < curTabIndex - 1; i++) { $('#index_tabs').iTabs('close', allTabtitle[i]); } $('#index_tabs').iTabs('select', curTabTitle); break; case "6": //刷新 var refresh_tab = $('#index_tabs').iTabs('getSelected'); var refresh_iframe = refresh_tab.find('iframe')[0]; refresh_iframe.contentWindow.location.href = refresh_iframe.src; //$('#index_tabs').trigger(TOPJUI.eventType.initUI.base); break; } } /** * 更换页面风格 * @param topjuiThemeName */ function changeTheme(themeName) {/* 更换主题 */ var $dynamicTheme = $('#dynamicTheme'); var themeHref = $dynamicTheme.attr('href'); var themeHrefNew = themeHref.substring(0, themeHref.indexOf('themes')) + 'themes/default/topjui.' + themeName + '.css'; // 更换主页面风格 $dynamicTheme.attr('href', themeHrefNew); // 更换iframe页面风格 var $iframe = $('iframe'); if ($iframe.length > 0) { for (var i = 1; i < $iframe.length; i++) { var ifr = $iframe[i]; var $iframeDynamicTheme = $(ifr).contents().find('#dynamicTheme'); var iframeThemeHref = $iframeDynamicTheme.attr('href'); var iframeThemeHrefNew = iframeThemeHref.substring(0, iframeThemeHref.indexOf('themes')) + 'themes/default/topjui.' + themeName + '.css'; $iframeDynamicTheme.attr('href', iframeThemeHrefNew); } } $.cookie('topjuiThemeName', themeName, { expires: 70, path: '/' }); }; if ($.cookie('topjuiThemeName')) { changeTheme($.cookie('topjuiThemeName')); }; /** * 生成左侧导航菜单 * @param menuId * @param systemName * @returns */ function generateMenu(menuId, systemName) { if (menuId == "") { $.iMessager.show({title: '操作提示', msg: '还未设置该菜单ID!'}); return; } $(".panel-header .panel-title:first").html(systemName); var allPanel = $("#RightAccordion").iAccordion('panels'); var size = allPanel.length; if (size > 0) { for (i = 0; i < size; i++) { var index = $("#RightAccordion").iAccordion('getPanelIndex', allPanel[i]); $("#RightAccordion").iAccordion('remove', 0); } } //资源菜单url var url = "/customer/resource/listByPid"; //获取资源菜单(只获取左侧第一层菜单) $.post(url, {"parentId": menuId},function (data) { if(data.code!=0){ return false; } data = data.data; //循环添加左侧第一层菜单 $.each(data, function (i, e) { var pid = e.pid; var isSelected = i == 0 ? true : false;//第一个默认选中 $('#RightAccordion').iAccordion('add', { fit: false, title: e.text, content: "