日期:2014-05-16 浏览次数:20589 次
function scriptUtil() {
    //加载导入的js列表
    this.scriptList = {};
    //加载的css列表
    this.cssList = {};
    //创建的控件类
    this.com = {};
};
<!DOCTYPE html>
  <head><title>test</title>
    <script src="../script/common/init.js" type="text/javascript"></script>
  </head>  
  <body>
  </body>
</html>
scriptUtil.prototype = {
    /**
     * 日志输出.
     * 参数 src 字符串
     */
    LogInfo : function(src) {
        if(console.info) {
            console.info(src);
        }
    },
    /**
     * 是否加载判断.
     * 参数 src 加载的文件名
     */
    isImport : function(src) {
        return (typeof this.scriptList[src] != "undefined" 
             || typeof this.cssList[src] != "undefined");
    }//方法之间用逗号隔开
}
scriptUtil.prototype = {
    //之前添加过的方法
    /**
     * 文件类型. 
     * 参数 scr 文件路径
     */
    scrType : function(scr) {
        var scrAry = scr.split(".");
            if (scrAry.length > 1) {
                return scrAry[scrAry.length - 1].toUpperCase();
            } else {
                return "";
            }
    } //方法之间用逗号隔开,
}
scriptUtil.prototype = {
    //之前添加过的方法
    getPath : function() {
                //获取默认的init.js文件路径
		var srcUrl = document.getElementsByTagName("script")[0].src;
		var re = /[\/\\]+/g;
                //判断是否是硬盘,或服务器上的URL
		if (/([a-zA-Z]:)|([hH][tT][tT][pP]:\/\/)/.test(srcUrl)) {
                        //获取html的URL
			var docUrl = document.URL;
                        //拆分成数组
			var srcAry = srcUrl.split(re);
			var docAry = docUrl.split(re);
			var indexs = 0;
                        //循环找到第一个不相同的目录
			for ( var i = 0, 
			    len = srcAry.length < docAry.length ? srcAry.length
					: docAry.length; 
			        i < len; i++) {
				if (srcAry[i] !== docAry[i]) {
					indexs = i;
					break;
				}
			}
                        //test.html目录回寻到根目录
			var path = "";
			for ( var i = indexs, len = docAry.length; i < len - 1; i++) {
				path = path + "../";
			}
                        //完善js的目录
			for ( var i = indexs, len = srcAry.length; i < len - 1; i++) {
				path = path + srcAry[i] + "/";
			}
			return path;
		} else {
                        //如果是相对目录,则直接使用。
			var srcAry = srcUrl.split(re);
			var path = "";
			for ( var i = 0, len = srcAry.length; i < len - 1; i++) {
				path = path + srcAry[i] + "/";
			}
			return path;
		}
	},
}
scriptUtil.prototype = {
//之前添加过的方法, 用逗号隔开
    /**
     * 加载文件,
     * 参数 src 加载的文件,字符串或数