js 에서 addEventListener, attachEvent, removeEventListener, detachEvent 는 IE 와 FF 에서 서로 다른 용법 을 사용 합 니 다.
6902 단어 attachEvent
addEventListener 의 인 자 는 모두 세 개 입 니 다. 문법 은 다음 과 같 습 니 다.
element.addEventListener(type,listener,useCapture)
원형: target. addEventListener (type, listener, useCapture);파라미터: target: 감청 대상;type: 감청 이벤트;listener: 처리 함
세다useCapture: 감청 순서 방식 의 용도: 특정한 사건 을 감청 하고 해당 하 는 작업 을 수행 합 니 다.예 를 들 어 window. addEventListener ("load", loadpwindow (), false);감청 창
창 을 불 러 올 때 loadWindow () 함 수 를 실행 합 니 다.예 를 들 어 세 번 째 매개 변 수 를 설명 합 니 다. 이 매개 변 수 는 useCapture 라 고 하 는데 불 값 입 니 다. 즉, true 또는 false 입 니 다.
감청 순 서 를 정 하 다.예 를 들 어 감청 대상 1 은 층 1 이 고 감청 대상 2 는 층 2 이 며 층 1 은 층 2 를 포함 하고 모두 감청 클릭 사건 을 감청 한다.층 2 를 누 르 면 층 1 과 층 2 가 응답 해 야 합 니 다. 응답 순서.
useCapture 에서 결정 하 겠 습 니 다.true 일 때 브 라 우 저 는 Capture 방식 을 사용 합 니 다. 먼저 바 텀 을 실행 합 니 다. 즉, 먼저 처리 층 1, 다시 처리 층 2. false 일 경우 Bubbling 방식 입 니 다.
먼저 꼭대기 층, 즉 먼저 처리 층 2, 다시 처리 층 1 을 처리 합 니 다.
html 코드
< div id = "div test" > < input type = "button" id = "btn test" value = "se4. cn 기술 기지" / > < / div >
js 코드
window.onload=function(){ document.getElementById("div_test").addEventListener("click",test1,false); document.getElementById
("btn test"). addEventListener ("click", test 2, false);} function test 1 () {alert ("외부 div 트리거")} function test 2 () {alert ("내부 입력 트리거")}}
userCapture 가 true 라면 test 1 이 먼저 터치 하고 userCapture 가 false 이면 test 2 가 먼저 터치 합 니 다.
이 예 는 인터넷 에서 온 예 입 니 다.
document.getElementById("btn").onclick = method1; document.getElementById("btn").onclick = method2; document.getElementById("btn").onclick = method3;이렇게 쓰 면 medhot 3 만 실 행 됩 니 다.
이렇게 썼 습 니 다: var btn1Obj = document. getElement ById ("btn 1"); /object.attachEvent(event,function); btn1Obj.attachEvent("onclick",method1); btn1Obj.attachEvent("onclick",method2); btn1Obj.attachEvent("onclick",method3);실행 순 서 는 method 3 - > method 2 - > method 1 입 니 다.
Mozilla 시리즈 라면 이 방법 을 지원 하지 않 습 니 다. addEventListenervar btn1Obj = document. getElement ById ("btn 1") 를 사용 해 야 합 니 다. / /element.addEventListener(type,listener,useCapture); btn1Obj.addEventListener("click",method1,false); btn1Obj.addEventListener("click",method2,false); btn1Obj.addEventListener("click",method3,false);실행 순 서 는 method 1 - > method 2 - > method 3 입 니 다.
-------------------------my demo
//
// IORI.addEvent(window,'load',test6);
// IORI.addEvent(window,'load',test5);
//
function addEvent(node,type,listener){
if(!IORI.isCompatible){return false;}
if(!(node=$(node))) {return false;}
if(node.addEventListener){
//W3C
node.addEventListener(type,listener,false);
return true;
}
else if(node.attachEvent){
//MS IE
node.attachEvent('on'+type,listener)
/*node['e'+type_]=listener;
node[type_]=function()
{
node['e'+type_](window.event);
}
node.attachEvent('on'+type_,node[type_]); */
return true;
}
//
return false;
}
IORI.addEvent = addEvent;
//
// IORI.removeEvent(window,'load',test6);
function removeEvent(node,type,listener){
if(!(node=$(node))){
return false;
}
if(node.removeEventListener){
//W3C
node.removeEventListener(type,listener,false);
return true;
}
else if(node.detachEvent){
node.detachEvent('on'+type,listener);
return true;
}
return false;
}
IORI.removeEvent = removeEvent;
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
js 에서 addEventListener, attachEvent, removeEventListener, detachEvent 는 IE 와 FF 에서 서로 다른 용법 을 사용 합 니 다.addEventListener 의 인 자 는 모두 세 개 입 니 다. 세다useCapture: 감청 순서 방식 의 용도: 특정한 사건 을 감청 하고 해당 하 는 작업 을 수행 합 니 다.예 를 들 어 window. ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.