Posted on 2007-03-21 09:07
itspy 阅读(8963)
评论(3) 编辑 收藏 所属分类:
JAVA技术
JS没有直接提供import这个功能,我想肯定有人遇到过这类问题。用baidu搜索了一下,找到了一些但都比较乱,看不太明白,郁闷了2天,后来想一想用google搜索一下。结果找到了几个网页讲的蛮清楚的。
http://www.cryer.co.uk/resources/javascript/script17_include_js_from_js.htm
然后做了一个简单的实验。发现效果不错。
顺便介绍一下应用场景,就好像设计模式一样,一个东西总要有他的应用场景,平常我们开发时,直接在网页里面通过“<SCRIPT src="include.js"></SCRIPT>”这种方式添加JS好的很嘛,干嘛要费力引入这种新的方式呢。
在开发JS框架时肯定是要用到这种方法,开发框架时你要求开发者使用你的库,但要同时引入好几个文件,这样会给人带来很不好的体验。
另外一种就是我现在遇到的:我写了几个页面,针对这些页面引入的所有JS函数我全部在一个JS文件中了。但我出于调试的需要,我要引入一个JS库(firebuglite),这个库专门用来打印log,如果不引入的话,我写的这些JS就会出错,也就是我要找出哪些页面引用了我的这个JS文件。然后在所有的页面通过<SCRIPT src="include.js"></SCRIPT> 的方式来添加这个打印log的库。
我当时就想,既然只有我的这个JS文件要用,我干嘛不通过include直接把它包含进来,这样就只要添加一处就行了,不要在每个页面都去添加,一不小心就忘记加错了,或者是将来不要了,又忘记删除,留下一推垃圾。这就是我之所以使用include的原因。或者是别人引用了我的包,而我不知道,这样也会形成错误,如果使用这种include就不会这样了。
示例下载地址:http://www.blogjava.net/Files/itspy/AJAX.rar
firebuglite:http://www.getfirebug.com/docs.html
因为使用了相对目录来include,最好全部解压缩之后才能运行,不能直接在压缩包中运行。
核心代码:
function IncludeJavaScript(jsFile)
{
document.write('<script type="text/javascript" src="'
+ jsFile + '"></script>');
}