JavaScript 학습 총화 4 - 이벤트 귀속
우리 가 특정한 요 소 를 조작 하여 일정한 상호작용 효 과 를 가 져 야 할 때 해당 하 는 요소 에 사건 처리 함 수 를 연결 해 야 한다.
이벤트 바 인 딩 은 HTML 내장 (추천 하지 않 음), 전통 이벤트 바 인 딩 (DOM 0 급 이벤트 바 인 딩 이 라 고도 함), 그리고 DOM 2 급 이벤트 바 인 딩 으로 나 뉜 다.
1. HTML 내장
<!-- -->
<body>
<a href="#" onclick="fnEvent()"> </a>
</body>
<script>
function fnEvent(){
alert(" ");
}
</script>
그러나 이런 표기 법 은 구조 적 표현 행위 분리의 원칙 에 어 긋 나 기 때문에 이런 귀속 사건 을 추천 하지 않 는 다
2. DOM 0 레벨 이벤트 귀속
//
var aA=document.getElementsByTagName("a")[0];
aA.onclick=function(){
alert(" !");
}
//
function abc(){
alert(" ");
}
aA.onclick=abc;
이것 은 이벤트 처리 함 수 를 요소 에 직접 할당 하 는 클릭 이벤트 에 해당 하 는 할당 쓰기 입 니 다. 매우 간단 합 니 다.
단점 은 하나의 요소 가 한 번 에 하나의 이벤트 처리 함수 만 연결 할 수 있 고, 새로 연 결 된 이벤트 처리 함수 도 오래된 이벤트 처리 함 수 를 덮어 씁 니 다.
3. DOM 2 레벨 이벤트 귀속
DOM 2 급 이벤트 바 인 딩 은 IE 와 표준 W3C 호환성 문제 와 관련된다.
또는 상기 코드 중의 a 요 소 를 예 로 들 면 W3C 의 귀속 방식 은
var aA=document.getElementsByTagName("a")[0];
aA.addEventListener('click',function(e){
alert(" ");
},false);
// aA addEventListener , , ( on), (true ,false )
IE 의 귀속 방식 은
aA.attachEvent('onclick',function(){
alert(" ");
});
// ,IE , this, this window ,
//IE on
이렇게 되면 W3C 와 IE 의 서로 다른 바 인 딩 방식 을 호 환 해 야 합 니 다.
DOM 2 레벨 이벤트 크로스 브 라 우 저 연결
//
function addEvent(element,type,fn){
if(element.addEventListener){
element.addEventListener(type,fn,false);
}else{
element.attachEvent('on'+type,fn);
}
}
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
다양한 언어의 JSONJSON은 Javascript 표기법을 사용하여 데이터 구조를 레이아웃하는 데이터 형식입니다. 그러나 Javascript가 코드에서 이러한 구조를 나타낼 수 있는 유일한 언어는 아닙니다. 저는 일반적으로 '객체'{}...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.