|
- /*
- * 版 本 ADMS V2 Learun智慧校园 敏捷 开发框架
- * Copyright (c) 2013-2018 北京泉江科技有限公司
- * 创建人:Learun智慧校园- 前端开发组
- * 日 期:2018.04.11
- * 描 述:框架开启js
- */
- (function (window) {
- "use strict";
- var plugins = [
- { name: 'jquery', ver: '1.10.2' },
- { name: 'cookie', ver: '1.0.0' },
- { name: 'md5', ver: '1.0.0' },
- { name: 'scrollbar', ver: '1.0.0' },
- { name: 'toastr', ver: '1.0.0' },
- { name: 'bootstrap', ver: '1.0.0' },
- { name: 'layer', ver: '1.0.0' },
- { name: 'jqprint', ver: '1.0.0' },
- { name: 'wdatePicker', ver: '1.0.0' },
- { name: 'syntaxhighlighter', ver: '1.0.0' },
-
- { name: 'fontAwesome', ver: '1.0.0' },
- { name: 'iconfont', ver:'1.0.0'},
- //'signalR',等即时好了再添加
-
- { name: 'common', ver: '1.0.0', isIframe: true },
- { name: 'base', ver: '1.0.0' },
- { name: 'tabs', ver: '1.0.0' },
- { name: 'date', ver: '1.0.0' },
- { name: 'validator-helper', ver: '1.0.0' },
- { name: 'lrlayer', ver: '1.0.0' },
- { name: 'ajax', ver: '1.0.0' },
- { name: 'clientdata', ver: '1.0.0' },
-
- { name: 'iframe', ver: '1.0.0', isIframe: true },
- { name: 'validator', ver: '1.0.0', isIframe: true },
- { name: 'layout', ver: '1.0.0', isIframe: true },
- { name: 'tree', ver: '1.0.0', isIframe: true },
- { name: 'select', ver: '1.0.0', isIframe: true },
- { name: 'formselect', ver: '1.0.0', isIframe: true },
- { name: 'layerselect', ver: '1.0.0', isIframe: true },
- { name: 'jfgrid', ver: '1.0.0', isIframe: true },
- { name: 'wizard', ver: '1.0.0', isIframe: true },
- { name: 'timeline', ver: '1.0.0', isIframe: true },
- { name: 'datepicker', ver: '1.0.0', isIframe: true },
- { name: 'uploader', ver: '1.0.0', isIframe: true },
- { name: 'excel', ver: '1.0.0', isIframe: true },
- { name: 'authorize', ver: '1.0.0', isIframe: true },
- { name: 'custmerform', ver: '1.0.0', isIframe: true },
- { name: 'workflow', ver: '1.0.0', isIframe: true },
- { name: 'form', ver: '1.0.0', isIframe: true },
- ];
-
- var iframePlugins = [];
-
- // 原生ajax方法实现
- function ajax() {
- var ajaxData = {
- type: arguments[0].type || "GET",
- url: arguments[0].url || "",
- async: arguments[0].async || "true",
- data: arguments[0].data || null,
- dataType: arguments[0].dataType || "text",
- contentType: arguments[0].contentType || "application/x-www-form-urlencoded",
- beforeSend: arguments[0].beforeSend || function () { },
- success: arguments[0].success || function () { },
- error: arguments[0].error || function () { }
- }
- ajaxData.beforeSend()
- var xhr = createxmlHttpRequest();
- xhr.responseType = ajaxData.dataType;
- xhr.open(ajaxData.type, ajaxData.url, ajaxData.async);
- xhr.setRequestHeader("Content-Type", ajaxData.contentType);
- xhr.send(convertData(ajaxData.data));
- xhr.onreadystatechange = function () {
- if (xhr.readyState == 4) {
- if (xhr.status == 200) {
- ajaxData.success(xhr.response)
- } else {
- ajaxData.error()
- }
- }
- }
- }
- function createxmlHttpRequest() {
- if (window.ActiveXObject) {
- return new ActiveXObject("Microsoft.XMLHTTP");
- } else if (window.XMLHttpRequest) {
- return new XMLHttpRequest();
- }
- }
- function convertData(data) {
- if (typeof data === 'object') {
- var convertResult = "";
- for (var c in data) {
- convertResult += c + "=" + data[c] + "&";
- }
- convertResult = convertResult.substring(0, convertResult.length - 1)
- return convertResult;
- } else {
- return data;
- }
- }
-
- // 浏览器本地存储方法
- var storage = {
- get: function (name) {
- if (localStorage) {
- return JSON.parse(localStorage.getItem(name)) || {};
- }
- else {
- return clientData[name] || {};
- }
- },
- set: function (name, data) {
- if (localStorage) {
- localStorage.setItem(name, JSON.stringify(data));
- }
- else {
- return clientData[name] = data;
- }
- }
- };
-
- // 加载框架需要的js和css代码
- var loadPlugins = [];
-
- function loadPlugin() {
- for (var i = 0, l = plugins.length; i < l; i++) {
- var item = plugins[i];
- var plugin = storage.get(item.name);
- if (plugin.ver != item.ver) {
- loadPlugins.push(item.name);
- }
- if (item.isIframe) {
- loadPlugins.push(item.name);
- }
- }
- // 从服务端加载js和css;
- ajax({
- url: "ajax.php",
- dataType: "json",
- data: { "plugins": String(loadPlugins) },
- success: function (msg) {
- console.log(msg);
- },
- error: function () {
- }
- });
- }
- })(window);
|