var tablist = { newTab: function (item) { var dataId = item.id; var dataUrl = item.url; var menuName = '' + item.title; var flag = true; if (dataUrl == undefined || $.trim(dataUrl).length == 0) { return false; } $('.menuTab').each(function () { if ($(this).data('id') == dataUrl) { if (!$(this).hasClass('active')) { $(this).addClass('active').siblings('.menuTab').removeClass('active'); $.learuntab.scrollToTab(this); $('#mainContent .LRADMS_iframe').each(function () { if ($(this).data('id') == dataUrl) { $(this).show().siblings('.LRADMS_iframe').hide(); return false; } }); } flag = false; return false; } }); if (flag) { var str = '' + menuName + ' '; $('.menuTab').removeClass('active'); var str1 = ''; $('#mainContent').find('iframe.LRADMS_iframe').hide(); $('#mainContent').append(str1); Loading(true); $('#mainContent iframe:visible').load(function () { Loading(false); }); $('.menuTabs .page-tabs-content').append(str); $.learuntab.scrollToTab($('.menuTab.active')); } } }; (function ($) { "use strict"; $.learuntab = { requestFullScreen: function () { var de = document.documentElement; if (de.requestFullscreen) { de.requestFullscreen(); } else if (de.mozRequestFullScreen) { de.mozRequestFullScreen(); } else if (de.webkitRequestFullScreen) { de.webkitRequestFullScreen(); } }, exitFullscreen: function () { var de = document; if (de.exitFullscreen) { de.exitFullscreen(); } else if (de.mozCancelFullScreen) { de.mozCancelFullScreen(); } else if (de.webkitCancelFullScreen) { de.webkitCancelFullScreen(); } }, refreshTab: function () { var currentId = $('.page-tabs-content').find('.active').attr('data-id'); var target = $('.LRADMS_iframe[data-id="' + currentId + '"]'); var url = target.attr('src'); Loading(true); target.attr('src', url).load(function () { Loading(false); }); }, activeTab: function () { var currentId = $(this).data('id'); if (!$(this).hasClass('active')) { $('#mainContent .LRADMS_iframe').each(function () { if ($(this).data('id') == currentId) { $(this).show().siblings('.LRADMS_iframe').hide(); return false; } }); $(this).addClass('active').siblings('.menuTab').removeClass('active'); $.learuntab.scrollToTab(this); } var dataId = $(this).attr('data-value'); if (dataId != "") { top.$.cookie('currentmoduleId', dataId, { path: "/" }); } }, closeOtherTabs: function () { $('.page-tabs-content').children("[data-id]").find('.tab_close').parents('a').not(".active").each(function () { $('.LRADMS_iframe[data-id="' + $(this).data('id') + '"]').remove(); $(this).remove(); }); $('.page-tabs-content').css("margin-left", "0"); }, closeTab: function () { var closeTabId = $(this).parents('.menuTab').data('id'); var currentWidth = $(this).parents('.menuTab').width(); if ($(this).parents('.menuTab').hasClass('active')) { if ($(this).parents('.menuTab').next('.menuTab').size()) { var activeId = $(this).parents('.menuTab').next('.menuTab:eq(0)').data('id'); $(this).parents('.menuTab').next('.menuTab:eq(0)').addClass('active'); $('#mainContent .LRADMS_iframe').each(function () { if ($(this).data('id') == activeId) { $(this).show().siblings('.LRADMS_iframe').hide(); return false; } }); var marginLeftVal = parseInt($('.page-tabs-content').css('margin-left')); if (marginLeftVal < 0) { $('.page-tabs-content').animate({ marginLeft: (marginLeftVal + currentWidth) + 'px' }, "fast"); } $(this).parents('.menuTab').remove(); $('#mainContent .LRADMS_iframe').each(function () { if ($(this).data('id') == closeTabId) { $(this).remove(); return false; } }); } if ($(this).parents('.menuTab').prev('.menuTab').size()) { var activeId = $(this).parents('.menuTab').prev('.menuTab:last').data('id'); $(this).parents('.menuTab').prev('.menuTab:last').addClass('active'); $('#mainContent .LRADMS_iframe').each(function () { if ($(this).data('id') == activeId) { $(this).show().siblings('.LRADMS_iframe').hide(); return false; } }); $(this).parents('.menuTab').remove(); $('#mainContent .LRADMS_iframe').each(function () { if ($(this).data('id') == closeTabId) { $(this).remove(); return false; } }); } } else { $(this).parents('.menuTab').remove(); $('#mainContent .LRADMS_iframe').each(function () { if ($(this).data('id') == closeTabId) { $(this).remove(); return false; } }); $.learuntab.scrollToTab($('.menuTab.active')); } var dataId = $('.menuTab.active').attr('data-value'); if (dataId != "") { top.$.cookie('currentmoduleId', dataId, { path: "/" }); } return false; }, addTab: function () { var dataId = $(this).attr('data-id'); if (dataId != "") { top.$.cookie('currentmoduleId', dataId, { path: "/" }); } var dataUrl = $(this).attr('href'); var menuName = $.trim($(this).html()); if (dataUrl == undefined || $.trim(dataUrl).length == 0) { return false; } var flag = true; $('.menuTab').each(function () { if ($(this).data('id') == dataUrl) { if (!$(this).hasClass('active')) { $(this).addClass('active').siblings('.menuTab').removeClass('active'); $.learuntab.scrollToTab(this); $('#mainContent .LRADMS_iframe').each(function () { if ($(this).data('id') == dataUrl) { $(this).show().siblings('.LRADMS_iframe').hide(); return false; } }); } flag = false; return false; } }); if (flag) { var str = '' + menuName + ''; $('.menuTab').removeClass('active'); var str1 = ''; $('#mainContent').find('iframe.LRADMS_iframe').hide(); $('#mainContent').append(str1); Loading(true); $('#mainContent iframe:visible').load(function () { Loading(false); }); $('.menuTabs .page-tabs-content').append(str); $.learuntab.scrollToTab($('.menuTab.active')); } $(this).parents('.popover-moreMenu').hide(); $(this).parents('.popover-menu').hide(); $(this).parents('.popover-menu-sub').hide(); return false; }, scrollTabRight: function () { var marginLeftVal = Math.abs(parseInt($('.page-tabs-content').css('margin-left'))); var tabOuterWidth = $.learuntab.calSumWidth($(".lea-tabs").children().not(".menuTabs")); var visibleWidth = $(".lea-tabs").outerWidth(true) - tabOuterWidth; var scrollVal = 0; if ($(".page-tabs-content").width() < visibleWidth) { return false; } else { var tabElement = $(".menuTab:first"); var offsetVal = 0; while ((offsetVal + $(tabElement).outerWidth(true)) <= marginLeftVal) { offsetVal += $(tabElement).outerWidth(true); tabElement = $(tabElement).next(); } offsetVal = 0; while ((offsetVal + $(tabElement).outerWidth(true)) < (visibleWidth) && tabElement.length > 0) { offsetVal += $(tabElement).outerWidth(true); tabElement = $(tabElement).next(); } scrollVal = $.learuntab.calSumWidth($(tabElement).prevAll()); if (scrollVal > 0) { $('.page-tabs-content').animate({ marginLeft: 0 - scrollVal + 'px' }, "fast"); } } }, scrollTabLeft: function () { var marginLeftVal = Math.abs(parseInt($('.page-tabs-content').css('margin-left'))); var tabOuterWidth = $.learuntab.calSumWidth($(".lea-tabs").children().not(".menuTabs")); var visibleWidth = $(".lea-tabs").outerWidth(true) - tabOuterWidth; var scrollVal = 0; if ($(".page-tabs-content").width() < visibleWidth) { return false; } else { var tabElement = $(".menuTab:first"); var offsetVal = 0; while ((offsetVal + $(tabElement).outerWidth(true)) <= marginLeftVal) { offsetVal += $(tabElement).outerWidth(true); tabElement = $(tabElement).next(); } offsetVal = 0; if ($.learuntab.calSumWidth($(tabElement).prevAll()) > visibleWidth) { while ((offsetVal + $(tabElement).outerWidth(true)) < (visibleWidth) && tabElement.length > 0) { offsetVal += $(tabElement).outerWidth(true); tabElement = $(tabElement).prev(); } scrollVal = $.learuntab.calSumWidth($(tabElement).prevAll()); } } $('.page-tabs-content').animate({ marginLeft: 0 - scrollVal + 'px' }, "fast"); }, scrollToTab: function (element) { var marginLeftVal = $.learuntab.calSumWidth($(element).prevAll()), marginRightVal = $.learuntab.calSumWidth($(element).nextAll()); var tabOuterWidth = $.learuntab.calSumWidth($(".lea-tabs").children().not(".menuTabs")); var visibleWidth = $(".lea-tabs").outerWidth(true) - tabOuterWidth; var scrollVal = 0; if ($(".page-tabs-content").outerWidth() < visibleWidth) { scrollVal = 0; } else if (marginRightVal <= (visibleWidth - $(element).outerWidth(true) - $(element).next().outerWidth(true))) { if ((visibleWidth - $(element).next().outerWidth(true)) > marginRightVal) { scrollVal = marginLeftVal; var tabElement = element; while ((scrollVal - $(tabElement).outerWidth()) > ($(".page-tabs-content").outerWidth() - visibleWidth)) { scrollVal -= $(tabElement).prev().outerWidth(); tabElement = $(tabElement).prev(); } } } else if (marginLeftVal > (visibleWidth - $(element).outerWidth(true) - $(element).prev().outerWidth(true))) { scrollVal = marginLeftVal - $(element).prev().outerWidth(true); } $('.page-tabs-content').animate({ marginLeft: 0 - scrollVal + 'px' }, "fast"); }, calSumWidth: function (element) { var width = 0; $(element).each(function () { width += $(this).outerWidth(true); }); return width; }, init: function () { $('.menuTabs').on('click', '.menuTab .tab_close', $.learuntab.closeTab); $('.menuTabs').on('click', '.menuTab', $.learuntab.activeTab); $('.tabLeft').on('click', $.learuntab.scrollTabLeft); $('.tabRight').on('click', $.learuntab.scrollTabRight); $('.tabReload').on('click', $.learuntab.refreshTab); $('.tabCloseCurrent').on('click', function () { $('.page-tabs-content').find('.active .tab_close').trigger("click"); }); $('.tabCloseAll').on('click', function () { $('.page-tabs-content').children("[data-id]").find('.tab_close').each(function () { $(this).parents('a').remove(); }); $('.page-tabs-content').children("[data-id]:first").each(function () { $('.LRADMS_iframe[data-id="' + $(this).data('id') + '"]').show(); $(this).addClass("active"); }); $('.page-tabs-content').css("margin-left", "0"); }); $('.tabCloseOther').on('click', $.learuntab.closeOtherTabs); $('.fullscreen').on('click', function () { if (!$(this).attr('fullscreen')) { $(this).attr('fullscreen', 'true'); $.learuntab.requestFullScreen(); } else { $(this).removeAttr('fullscreen'); $.learuntab.exitFullscreen(); } }); } }; $.learunindex = { load: function () { $("#mainContent").height($(window).height() - 128); $(window).resize(function (e) { $("#mainContent").height($(window).height() - 128); $.learunindex.loadMenu(true); }); //个人中心 $("#UserSetting").click(function () { tablist.newTab({ id: "UserSetting", title: "个人中心", closed: true, icon: "fa fa fa-user", url: contentPath + "/PersonCenter/Index" }); }); $(window).load(function () { window.setTimeout(function () { $('#ajax-loader').fadeOut(); Loading(false); }, 300); }); }, jsonWhere: function (data, action) { if (action == null) return; var reval = new Array(); $(data).each(function (i, v) { if (action(v)) { reval.push(v); } }) return reval; }, loadMenu: function (isInit) { var flag = false; var topMenuWidth = $('.lea-Head').width() - $.learuntab.calSumWidth($(".lea-Head").children().not(".left-bar")); var data = authorizeMenuData; var _html = ""; var menuWidth = 0; var _html1 = "", _html2 = ""; $.each(data, function (i) { var row = data[i]; if (row.ParentId == "0") { var _itemHtml = ""; _itemHtml += '