JavaScript 이벤트 바인딩을 위한 일반적인 메서드
1. Object.Event = function;
동시에 하나의 응답 함수만 객체의 이벤트에 바인딩할 수 있습니다.
은 불가능합니다. 여러 개가 바인딩되어 있으면 후자가 이전 항목을 덮어씁니다
2.addEventListener()
이 방법은 또한 바인드 요소 정의된 응답 함수
매개변수:
● 이벤트 문자열(on 없음)
● 이벤트가 트리거될 때 실행되는 콜백 함수 #🎜 🎜 #
● 캡처 단계에서 이벤트를 트리거할지 여부는 일반적으로 false를 전달합니다이 방법을 사용하여 요소의 동일한 이벤트에 여러 응답 함수를 바인딩합니다#🎜🎜 #이벤트가 발생하면 바인딩 순서대로 순차적으로 실행됩니다
3.attachEvent()IE8 이하 브라우저에서는 addEventListener() 메서드를 지원하지 않지만, attachmentEvent() 메서드를 사용하면 동일한 효과를 얻을 수 있습니다.
● 매개변수:
이벤트 문자열(켜짐) #🎜 🎜#
● 콜백 함수 이 메서드는 여러 함수를 바인딩할 수도 있지만 함수 실행 순서가 addEventListener()4와 반대입니다. 이 문제와 해결 방법
# 🎜🎜#addEventListener()의 이 항목은 바인딩된 이벤트의 개체입니다attachEvent()의 이 항목은 창입니다
#🎜🎜 #호환성 문제를 해결하려면 두 메서드 중 this을 통합해야 합니다. 여기서는 call() 메서드를 사용합니다call()을 사용할 수 있습니다. this# 함수를 변경합니다. 🎜🎜#자체 구축 함수인 바인딩()이벤트를 객체에 바인딩하는 함수 정의#🎜 🎜#
● Idea#🎜🎜 #3개의 매개변수: 객체, 이벤트, 콜백 함수 ● 호환성:
if를 사용하여 객체에는 브라우저를 구별하기 위한 addEventListener 메소드가 있습니다
#🎜🎜 #● 이 문제에 대한 해결 방법들어오는 콜백 함수는 브라우저에서 호출하기 때문에 작동할 수 없으므로 작동하지 않습니다. AttachEvent()에 콜백함수를 직접 전달하되, 먼저 익명함수를 정의한 후 함수 내부에서 콜백함수를 호출하고, call 메소드를 사용하면 이 스터디가 달라집니다!위 내용은 JS 이벤트 자체 구축 함수인 바인딩() 및 호환성 문제에 대한 솔루션의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!