zoukankan      html  css  js  c++  java
  • FileLoadTools

    /**
     * Created by dev013 on 9/9/14.
     */
    var FileLoadTools = (function () {
      var my = {};
      var htmlFile = [];// array for storing name of files loaded
      var jsFile = [];
      var cssFile = [];
    
      /**
       * @param {Object} file filename
       * @param {Object} fileArray
       * function for judging if the file is loaded or not
       */
      function isLoaded(file, fileArray) {
        for (var i = 0; i < fileArray.length; i++) {
          if (fileArray[i] == file) {
            return true;
          }
        }
        return false;
      }
    
      function getLastArray(array) {
        return array[array.length - 1];
      }
    
      /**
       * @param {Object} baseurl
       * @param {Object} names
       * function to load js files by names
       */
      my.loadJsFile = function (names) {
        var name = getLastArray(names);
        if (!isLoaded(name, jsFile)) {
          var url = g_applicationContext + g_jsPath + names.join("/") + ".js";
          $("head").append("<script src='" + url + "'></script>");
          jsFile.push(name);
        }
      };
    
      /**
       * load js files by jQuery ,support callback after js file loaded.
       * @method loadJsFileByJQ
       * @param {Array} names
       * @param {Function} onload
       */
      my.loadJsFileByJQ = function (names, onload) {
        var name = getLastArray(names);
        if (!isLoaded(name, jsFile)) {
          var url = g_applicationContext + g_jsPath + names.join("/") + ".js";
          jsFile.push(name);
          $.getScript(url, function (data, textStatus, jqxhr) {
            if (typeof onload == 'function') {
              onload.apply();
            }
          });
        }
    
      };
    
      my.loadMock = function (name, onload) {
        if (!isLoaded(name, jsFile)) {
          var url = g_applicationContext + g_mockPath + name + ".js";
          jsFile.push(name);
          $("head").append("<script src='" + url + "'></script>");
        }
      }
    
      my.loadCssFile = function (names) {
        var name = names[0];
        if (!isLoaded(name, cssFile)) {
          var url = g_applicationContext + g_cssPath + name + ".css";
          $("head").append("<link type='text/css' rel='stylesheet' href='" + url + "'>");
          cssFile.push(name);
        }
      };
    
      my.loadRqrFiles = function (names, jqObj) {
        var name = getLastArray(names);
        if (!isLoaded(name, htmlFile)) {
          var url = g_applicationContext + g_htmlPath + names.join("/") + ".html";
          var func = function (data) {
            //after the html file loaded,load the js and css files
            jqObj.append(data);
            htmlFile.push(name);
            my.loadJsFile(names);
            my.loadCssFile(names);
            if (names.length == 1) {
              populateThePageWithLanguageSetting(names.join("-") + "Page");
            } else {
              populateThePageWithLanguageSetting(names.join("-"));
            }
          };
    
          var errorFunc = function (xhr) {
            alert(xhr.statusText);
          };
    
          $.ajax({
            async: false,
            url: url,
            type: "GET",
            success: func,
            error: errorFunc
          });
        }
      };
      return my;
    }());
    
    /*
     *function for load file needed when menu item clicked
     **/
    $.fn.loadPageToContent = function (names) {
      FileLoadTools.loadRqrFiles(names, $(this));
    };
    

      

  • 相关阅读:
    【Java TCP/IP Socket】应用程序协议中消息的成帧与解析(含代码)
    【Java TCP/IP Socket】UDP Socket(含代码)
    【Java TCP/IP Socket】TCP Socket(含代码)
    Java NIO —— Buffer(缓冲区)
    java.nio.ByteBuffer 以及flip,clear及rewind区别
    Java文件IO操作应该抛弃File拥抱Paths和Files
    Java网络编程之InetAddress和URL
    Java enum的用法详解
    PAT Basic 1083 是否存在相等的差 (20 分)
    PAT Basic 1082 射击比赛 (20 分)
  • 原文地址:https://www.cnblogs.com/MonaSong/p/6760783.html
Copyright © 2011-2022 走看看