javascript include 클래스
여러개의 클래스을 각각의 *.js 파일로 만들어 놓고, 사용되는 클래스들만 import하여 쓸수 있게 하는 class를 만들었다. (회사 지인의 아이디어이고 코드만 만들어봤다.)
/**
Include class blog.byuli.com
2007 03 23
*/
var Byuli= {
default_path: null,
setPath: function(url){
this.default_path= url;
},
include: function()
{
var jsList= this.include.arguments;
for ( var i=0; i<jsList.length; i++ )
{
var tag= "<script languge=\"javascript\"";
tag+= "src=\"" + this.default_path + jsList[i] + ".js?ver=1.1\"></script>";
document.write(tag);
}
}
}
Include class blog.byuli.com
2007 03 23
*/
var Byuli= {
default_path: null,
setPath: function(url){
this.default_path= url;
},
include: function()
{
var jsList= this.include.arguments;
for ( var i=0; i<jsList.length; i++ )
{
var tag= "<script languge=\"javascript\"";
tag+= "src=\"" + this.default_path + jsList[i] + ".js?ver=1.1\"></script>";
document.write(tag);
}
}
}
보면 알겠지만, document.write로 코드를 써준다. 아래처럼 javascript로 element를 생성할수도 있지만 head가 onload된 상태에서만 동작하기때문에 쓸수가 없다.
var el = document.createElement('script');
el.src = url;
document.getElementsByTagName('head')[0].appendChild(el);
el.src = url;
document.getElementsByTagName('head')[0].appendChild(el);
위 클래스를 쓰는 방법은 아래와 같다. 먼저 javascript 파일이 존재하는 절대 경로를 입력하고 아래에 각 js파일을 인자로 넘기면 된다.
Byuli.setPath("/script/");
Byuli.include(
"/byuli/util.js",
"/byuli/ajax.js",
"/byuli/string.js"
);
Byuli.include(
"/byuli/util.js",
"/byuli/ajax.js",
"/byuli/string.js"
);
어려운 코드가 아니나, java처럼 class 단위로 분리한 javascript 파일을 효율적으로 import 할수 있는 방법으로써 좋은 아이디어라고 생각된다.
'Web > Client' 카테고리의 다른 글
| 자바스크립트로 구현한 튤팁(Tooltip) (0) | 2007/08/20 |
|---|---|
| Ajax 호출시 JSON 으로 리턴 받기 (0) | 2007/08/06 |
| java냐 javascript이냐? (0) | 2007/07/31 |
| javascript include 클래스 (0) | 2007/02/23 |
| iframe 과 같은 object 태그 (0) | 2007/02/08 |
| javascript 오류 보고에 대한 발상? (0) | 2007/02/06 |
- Posted by byuli on 2007/02/23 11:33
- 받은 트랙백이 없고
- 댓글이 없습니다.