제 2 장 utility functions
유틸리티 함수들을 살펴보자. dojo에는 아쉽게도(?) prototype사용자들이 제일 좋아하는 함수 $()가 없다. 대신 dojo.byId()가 있다. 이게 귀찮다고 생각하시는 분이 계시겠지만 dojo 개발팀에서도 꽤 오랜 고민과 토론 끝에 내린 결론이다. 관심있는 분은 메일링을 뒤져보시라.
* prototype
* dojo
너무 길다고? 익숙해지면 별 차이없다. document.getElementById()보다는 짧지않은가! 거기다 나는 $ 기호에 알르레기반응이 있다. per~~~~~l 씨러=3=3=3=33
* 지정한 노드 이름(태그 이름) / CSS 셀렉터를 가진 DOM node들(배열)을 검색
* dom
* prototype
유틸리티 함수들을 살펴보자. dojo에는 아쉽게도(?) prototype사용자들이 제일 좋아하는 함수 $()가 없다. 대신 dojo.byId()가 있다. 이게 귀찮다고 생각하시는 분이 계시겠지만 dojo 개발팀에서도 꽤 오랜 고민과 토론 끝에 내린 결론이다. 관심있는 분은 메일링을 뒤져보시라.
* 지정한 id를 가진 DOM node를 검색
* dom
var node = document.getElementById('abc');
* prototype
var node = $('abc');
* dojo
var node = dojo.byId('abc');
너무 길다고? 익숙해지면 별 차이없다. document.getElementById()보다는 짧지않은가! 거기다 나는 $ 기호에 알르레기반응이 있다. per~~~~~l 씨러=3=3=3=33
* 지정한 노드 이름(태그 이름) / CSS 셀렉터를 가진 DOM node들(배열)을 검색
* dom
var nodes = document.getElementsByTagName('div');
* prototype
var nodes = $$('div');
var nodes = $$('.item');
var nodes = $$('#title);
var nodes = $$('div.item');
...
var nodes = $$('.item');
var nodes = $$('#title);
var nodes = $$('div.item');
...
* dojo
var nodes = dojo.query('div');
var nodes = dojo.query('.item');
var nodes = dojo.query('#title');
var nodes = dojo.query('div.item');
...
var nodes = dojo.query('.item');
var nodes = dojo.query('#title');
var nodes = dojo.query('div.item');
...
dojo.query()도 prototype이나 jquery와 비슷한 CSS 2.1 셀렉터를 지원한다. 더 자세한 내용은 온라인 문서를 찾아보시라.
나중에 얘기하겠지만 prototype에서 $$와 each()의 결합을 많이 쓰는 것처럼, dojo.query()도forEach()와 함께 쓰면 편리하다.
일단 자자~ -,.-;;;;
'hacking > web' 카테고리의 다른 글
| prototype사용자를 위한 dojo 입문 (4) (1) | 2007/11/16 |
|---|---|
| prototype사용자를 위한 dojo 입문 (3) (0) | 2007/11/15 |
| prototype사용자를 위한 dojo 입문 (2) (0) | 2007/11/13 |
| prototype사용자를 위한 dojo 입문 (1) (0) | 2007/11/13 |
| 2007 Ajaxian.com Reader Survey 결과 (0) | 2007/10/15 |
| DOMContentLoaded revisited (0) | 2007/09/27 |
댓글을 달아 주세요