>  기사  >  웹 프론트엔드  >  자바스크립트에서 이벤트 바인딩을 해제하는 방법

자바스크립트에서 이벤트 바인딩을 해제하는 방법

醉折花枝作酒筹
醉折花枝作酒筹원래의
2021-04-16 16:43:365183검색

방법: 1. "object name.onclick=null" 문을 사용합니다. 2. "object name.removeEventListener(type, function(){},false)" 문을 사용합니다. 3. "object.detachEvent( 유형, 이름) )" 구문을 사용합니다.

자바스크립트에서 이벤트 바인딩을 해제하는 방법

이 튜토리얼의 운영 환경: Windows 7 시스템, JavaScript 버전 1.8.5, Dell G3 컴퓨터.

호환성 이벤트 바인딩 방법 캡슐화 필요에 따라 이벤트 바인딩이 트리거된 후 이벤트에 접속해야 하는 경우도 있습니다.

Unbind 이벤트 방법:

1. onclick

 element.onclick = false/''/null

Instance

<p></p>
 var p = document.getElementByTagName("p")[0]; 
    p.onclick = function () {
    console.log("a");
    p.onclick = null; 
}

2. addEventListener(type, function(){},false) 바인딩 해제,

remove를 사용하여 바인딩 해제

addEventListener(type, function) (){},false), 이벤트 유형, 함수, false가 일대일로 일치해야 합니다

잘못된 취소 방법

var p = document.getElementByTagName("p");
p.addEventListener(&#39;click&#39;,function(){
    console.log("a");
},false)
p.removeEventListener(type,(function(){console.log("a");}),false)

이 상황은 해결할 수 없습니다

올바른 취소 방법

function test(){
    console.log("a");
}
p.addEventListener(&#39;click&#39;,test,false);
p.removeEventListener(&#39;click&#39;,test,false);

3. on'+ type,function(){}), detachEvent('on'+type,function(){})을 사용하여 취소

function test(){}
obj.attachEvent(&#39;on&#39;+ type,test);
obj.detachEvent(&#39;on&#39;+type,test)

【추천 학습: javascript 고급 튜토리얼

위 내용은 자바스크립트에서 이벤트 바인딩을 해제하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.