addlistener
클래스: handle
이벤트 소스에 바인딩된 이벤트 리스너 생성
구문
el = addlistener(hSource,EventName,callback)
el = addlistener(hSource,PropertyName,EventName,callback)
addlistener(___)
설명
은 이벤트 el
= addlistener(hSource
,EventName
,callback
)EventName
에 대한 리스너를 생성합니다. 이 이벤트가 소스 객체 hSource
에서 트리거되면 콜백 함수 callback
이 호출됩니다. hSource
가 배열인 경우 리스너는 hSource
배열의 객체에 대해 명명된 이벤트에 응답합니다.
은 미리 정의된 속성 이벤트 중 하나에 대한 리스너를 생성합니다. 다음과 같이 4개의 미리 정의된 속성 이벤트가 있습니다.el
= addlistener(hSource
,PropertyName
,EventName
,callback
)
이벤트 이름 | 이벤트 발생 시기 |
---|---|
PreSet | 속성값이 설정되기 직전, set 액세스 메서드를 호출하기 전에 발생함 |
PostSet | 속성값을 설정한 직후에 발생함 |
PreGet | 속성값 쿼리가 처리되기 직전, get 액세스 메서드를 호출하기 전에 발생함 |
PostGet | 쿼리에 속성값을 반환한 직후에 발생함 |
addlistener(___)
는 핸들 없이 리스너 객체를 생성합니다. 이 구문을 위에 열거된 구문의 입력 인수와 함께 사용할 수 있습니다.
입력 인수
출력 인수
예제
팁
리스너의 핸들이 들어 있는 변수(예:
el
)를 재정의하거나 지워도 리스너는 삭제되지 않습니다. 이벤트 객체(hSource
)에는 여전히event.listener
객체에 대한 참조가 있습니다.addlistener
는 리스너의 라이프사이클을 이벤트의 소스 객체에 연결합니다.리스너는 이벤트 소스의 라이프사이클에 바인딩되지만 리스너는 다음과 같은 경우에 이벤트 소스가 제거된 후에도 계속 존재합니다.
리스너에 대한 하나 이상의 참조가 다른 변수에 있는 경우(생성 시점에 리스너의 핸들이 지정된 경우 핸들 포함).
리스너가 다른 이벤트 소스에 연결된 경우.
리스너를 제거하려면
addlistener
에서 반환되는 리스너 객체를 삭제하십시오. 예를 들어,delete(el)
은 핸들 클래스 삭제 메서드를 호출하여 리스너 객체를 삭제합니다.이벤트 객체에 연결되지 않는 리스너를 정의하려면
event.listener
생성자를 사용하여 리스너를 직접 생성하십시오.
대안
리스너 객체의 라이프사이클이 소스 객체 라이프사이클에 독립적이 되도록 하려면 리스너를 만들 때 listener
를 사용하십시오.
확장 기능
버전 내역
R2008a에 개발됨