-
元芳怎么了
export允许标明的脚本向其它标明或未标明的脚本提供属性、函数和对象。实现版本 Navigator 4.0, Netscape Server 3.0描述通常情况下标明脚本中的信息仅对象同主体标明的脚本可用。通过导出属性、函数或对象,标明脚本将使得信息对于任何脚本(标明或未标明的)都可用。接收脚本使用对应的 import 语句访问信息。import允许脚本从标识的脚本中导入已经导出的属性、函数和对象。实现版本 Navigator 4.0, Netscape Server 3.0描述objectName 参数是将接受导入的名称的对象名称。例如,如果已经导出了 f 和 p,obj 是导入脚本中的一个对象,那么import obj.f, obj.p 将使得 f 和 p 在导入脚本中可访问,就像是 obj 的属性一样。通常情况下,标明脚本中的信息仅对象同主体标明的脚本可用。通过导出(使用 export 语句)属性、函数或对象,标明脚本将使得信息对于任何脚本(标明或未标明的)都可用。接收脚本使用对应的 import 语句访问信息。脚本必须在导入并使用任何导出的属性、函数或对象之前将导出脚本装载到窗口、框架或层中。
-
拉风的咖菲猫
var JCore = {//构造核心对象version:1.0,$import:function(importFile){var file = importFile.toString();var IsRelativePath = (file.indexOf("$")==0 ||file.indexOf("/")==-1);//相对路径(相对于JCore)var path=file;if(IsRelativePath){//计算路径,$开头表示使用当前脚本路径,/开头则是完整路径if(file.indexOf("$")==0)file = file.substr(1);path = JCore.$dir+file;}var newElement=null,i=0;var ext = path.substr(path.lastIndexOf(".")+1);if(ext.toLowerCase()=="js"){var scriptTags = document.getElementsByTagName("script");for(var i=0;ilength;i++) {if(scriptTags[i].src && scriptTags[i].src.indexOf(path)!=-1)return;}newElement=document.createElement("script");newElement.type="text/javascript";newElement.src=path;}else if(ext.toLowerCase()=="css"){var linkTags = document.getElementsByTagName("link");for(var i=0;ilength;i++) {if(linkTags[i].href && linkTags[i].href.indexOf(path)!=-1)return;}newElement=document.createElement("link");newElement.type="text/css";newElement.rel="Stylesheet";newElement.href=path;}elsereturn;var head=document.getElementsByTagName("head")[0];head.appendChild(newElement);},$dir : function(){var scriptTags = document.getElementsByTagName("script");for(var i=0;ilength;i++) {if(scriptTags[i].src && scriptTags[i].src.match(/JCore/.js$/)) {path = scriptTags[i].src.replace(/JCore/.js$/,"");return path;}}return "";}()}其中$dir表示当前脚本文件的路径,通过当前文件的文件名查找路径;$import方法可以导入js脚本或css样式表文件,如果以$开头则使用当前脚本文件的路径导入文件,如果以/开头则表示是完整的脚本路径!$import("/Script/myfile.js");$import("/Script/mystyle.css");$import("$myfile.js");为html动态添加script节点元素或style节点元素只是动态导入脚本的一种脚本,除此之外,还可以通过Ajax异步请求js脚本文件,然后通过eval方法把获取的脚本文本转换为脚本代码实现动态导入功能!但是css样式表文件无法通过这种方式导入!不过CSS样式表本身即有@import关键字,可以实现文件引用包含!
-
繁星coding
export允许标明的脚本向其它标明或未标明的脚本提供属性、函数和对象。实现版本 Navigator 4.0, Netscape Server 3.0描述通常情况下标明脚本中的信息仅对象同主体标明的脚本可用。通过导出属性、函数或对象,标明脚本将使得信息对于任何脚本(标明或未标明的)都可用。接收脚本使用对应的 import 语句访问信息。import允许脚本从标识的脚本中导入已经导出的属性、函数和对象。实现版本 Navigator 4.0, Netscape Server 3.0描述objectName 参数是将接受导入的名称的对象名称。例如,如果已经导出了 f 和 p,obj 是导入脚本中的一个对象,那么import obj.f, obj.p 将使得 f 和 p 在导入脚本中可访问,就像是 obj 的属性一样。通常情况下,标明脚本中的信息仅对象同主体标明的脚本可用。通过导出(使用 export 语句)属性、函数或对象,标明脚本将使得信息对于任何脚本(标明或未标明的)都可用。接收脚本使用对应的 import 语句访问信息。