2012-03-12 4 views
1

그래서 우리 모두는 자바 스크립트로 아주 간단하게 객체를 생성 할 수 있습니다 알고자바 스크립트 객체와 DOM

이제 JavaScript의 기능을 사용하여 DOM을 쿼리하여 요소를 찾은 다음 속성을 설정합니다. JavaScript를 기반으로하는 jQuery 및 기타 도구를 사용하여 동일한 작업을 수행 할 수 있습니다.

하나는 등 온 클릭 onchange를, 같은 DOM이 제공하는 다양한 방법 중의 하나로 자바 스크립트 함수를 호출 할 수 있습니다 등

그래서 제 질문은 하나의 사실로, DOM 내의 자바 스크립트 객체가 않습니다 어떻게 draw 메소드에 클릭 메쏘드 등을 말하면됩니다. 이렇게하면 DOM이 draw 메소드를 실행하여 DOM 캔버스에서 무언가를 렌더링하고 클릭 또는 더블 클릭으로 그 객체에 특정한 메소드를 호출 할 수 있습니까?

+0

짧은 대답은 : 할 수 없습니다. –

답변

1

DOM에서 고유 한 유형의 개체를 만들거나 javascript로 새 브라우저 수준 이벤트를 만들 수 없습니다. 브라우저 DOM이 이미 지원하는 객체 유형 중 하나를 만들고 해당 객체가 지원하는 이벤트를 사용해야합니다. 네이티브 코드를 사용해 어도비 플래시와 같은 브라우저 플러그인을 만들 수도 있지만, 자바 스크립트에서 구현되지 않았고 다운로드가 필요하기 때문에 원하는 것은 아니라고 생각합니다. .

그러나 <div>과 같은 일반 개체를 사용하고 원하는 방식으로 클릭 이벤트에 응답 할 수 있습니다. div에는 클릭 및 그리기에 대한 기본 동작이 없으므로 DOM의 자리 표시 자일뿐입니다. 그런 다음 자체 개체를 내부에 포함하거나 속성을 설정하여 원하는 시각적 모양을 만들 수 있습니다. 그리고 원하는 동작을주기 위해 다양한 이벤트 (클릭, 키 등)를 처리 할 수 ​​있습니다. 따라서, 당신은 자신의 객체 모양과 동작을 빌드 할 수있는 비계처럼 <div>과 같은 일반적인 객체를 생각할 수 있습니다.

DOM 개체 주위에 자바 스크립트 래퍼를 두는 방법조차 있습니다. 따라서 해당 개체와의 상호 작용은 실제 DOM 개체가 아닌 javascript 개체와 비슷합니다 (jQuery와 YUI 모두 해당). 그러나 밑에는 자바 스크립트 래퍼가있는 실제 DOM 객체입니다.

1

DOM 트리는 Javascript 개체, 특히 다양한 종류의 요소 개체로 구성됩니다. DOM 트리에 다른 객체를 넣을 수 없습니다.

DOM 요소는 메서드가 아닌 사용자 지정 가능한 동작에 이벤트를 사용합니다. 예를 들어 click 이벤트는 누군가 요소를 클릭하면 활성화됩니다. 이벤트에 대한 이벤트 핸들러로 메소드를 연결하면 이벤트가 활성화 될 때 해당 메소드가 호출됩니다.