찾다
웹 프론트엔드JS 튜토리얼jQuery 바인딩 이벤트 리스너 바인딩 및 이벤트 리스너 제거 unbind_jquery 사용 예에 ​​대한 자세한 설명

이 문서의 예에서는 jQuery 바인딩 이벤트 리스너 바인딩 사용법과 이벤트 리스너 바인딩 해제 제거 방법을 설명합니다. 참고할 수 있도록 모든 사람과 공유하세요. 자세한 내용은 다음과 같습니다.

여기서 각각 바인딩(eventType,[data],Listener)//data를 선택적 매개변수로 사용하면 one() 메서드에 바인딩된 이벤트는 한 번 실행된 후 자동으로 삭제됩니다. unbind(eventType,Listener),

예:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html>
<head>
<title>unbind(eventType,listener)</title>
<style type="text/css">
<!--
img{
 border:1px solid #000000;
}
input{
 border:1px solid #570000;
}
-->
</style>
<script language="javascript" src="jquery.min.js"></script>
<script language="javascript">
$(function(){
 var fnMyFunc1; //函数变量
 $("img")
 .bind("click",fnMyFunc1 = function(){ //赋给函数变量
  $("#show").append("<div>点击事件1</div>");
 })
 .bind("click",function(){
  $("#show").append("<div>点击事件2</div>");
 })
 .bind("click",function(){
  $("#show").append("<div>点击事件3</div>");
 });
 $("input[type=button]").click(function(){
 $("img").unbind("click",fnMyFunc1); //移除事件监听myFunc1
 });
});
</script>
</head>
<body>
 <img  src="/static/imghwm/default1.png"  data-src="11.jpg"  class="lazy" alt="jQuery 바인딩 이벤트 리스너 바인딩 및 이벤트 리스너 제거 unbind_jquery 사용 예에 ​​대한 자세한 설명" > <input type="button" value="移除事件1">
 <div id="show"></div>
</body>
</html>

이 테스트 코드를 다시 살펴보세요.

<body>
<input type="button" name="aaa" value="点击我">
<input type="checkbox" name="checkbox1">
</body>

JQuery 코드:

$().ready(function(){
for (var i = 0; i < 3; i++) {
$("input[type='button']").click(function(){
alert("aaaa");
});
}
}

alert("aaaa")는 3번 실행됩니다. 이벤트 중첩 이벤트에서 이러한 상황을 보고 싶지 않으면 이때 상위 이벤트를 비활성화해야 합니다. 그리고 문제를 해결하기 위해 함수를 바인딩 해제합니다.

기능 소개:

for (var i = 0; i < 3; i++) {
$("input[type='button']").unbind("click");
$("input[type='button']").bind("click", function(){
alert("aaa");
});
}

alert("aaa"); 한 번만 실행됩니다.

bind() 메소드는 선택한 요소에 하나 이상의 이벤트 핸들러를 추가하고 이벤트 발생 시 실행할 함수를 지정합니다
unbind() 메서드는 선택한 요소의 이벤트 핸들러를 제거합니다. 이벤트 핸들러 전체 또는 선택한 이벤트 핸들러를 제거하거나 이벤트 발생 시 지정된 함수의 실행을 종료하는 기능.

이벤트 는 이벤트 유형이며 유형에는 다음이 포함됩니다: 흐림, flcus, 로드, 크기 조정, 스크롤, 언로드, 클릭, dblclikc, mousedown, mouseup, mousemove, mouseover, mouseout, mouseenter, mouseleave, 변경 , select , submit, keydown, keypress, keyup, error 등은 물론 사용자 정의 이름일 수도 있습니다.

data는 선택적 매개변수이며, 이벤트 객체의 추가 데이터 객체에 event.data 속성 값이 전달됩니다.
함수는 바인딩에 사용되는 처리 함수입니다.

문법:

$(selector).bind(event,data,function)

이벤트와 함수는 설명을 위해 다음 코드 조각을 가리켜야 합니다.

예 1: p의 모든 이벤트 삭제

코드 복사 코드는 다음과 같습니다.
$("p").unbind();

예시 2: p
의 클릭 이벤트 삭제
코드 복사 코드는 다음과 같습니다.
$("p").unbind("click");

예시 2: p 요소의 클릭 이벤트를 삭제한 후 실행되는 테스트 함수와 p 요소의 클릭 이벤트를 추가한 후 실행되는 테스트 함수
$("p").unbind("click",test);
$("p").bind("click",test);

참고: .bind()를 정의하려면 어떤 이벤트와 함수를 지정해야 합니다.

이제 간단한 데모를 살펴보겠습니다. 전체 div에 클릭하여 축소 및 확장 이벤트가 있습니다. 링크를 클릭하고 싶지만 div의 클릭 이벤트를 트리거하지 않으려면 링크가 클릭될 때 div의 클릭 이벤트를 비활성화해야 합니다. 여기서 링크 mouseenter 이벤트는 div 이벤트를 바인딩 해제하고 삭제하는 데 사용됩니다. 아직 끝이 아닙니다. 이때 마우스가 링크 영역에 진입하는 한 div의 클릭 이벤트가 삭제됩니다. 또한 마우스가 링크 영역 밖으로 이동할 때의 div 클릭 이벤트 복원도 추가해야 합니다. 링크 영역. 코드는 다음과 같습니다.

$(function(){ var Func = function(){
  $(".com2").toggle(200); }
  $(".test").click(Func)
  $(".test a").mouseenter(function(){
    $(".test").unbind(); //删除.test的所有事件
  });
  $(".test a").mouseleave(function(){
    $(".test").bind("click",Func); //添加click事件
  });
});

이벤트는 이벤트 종류입니다

function은 바인딩에 사용되는 처리 기능입니다.

jQuery 이벤트와 관련된 더 많은 콘텐츠에 관심이 있는 독자는 이 사이트의 특별 주제인 "jQuery 공통 이벤트 사용 및 기술 요약"

을 확인할 수 있습니다.

이 기사가 jQuery 프로그래밍에 종사하는 모든 사람에게 도움이 되기를 바랍니다.

성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
jquery实现多少秒后隐藏图片jquery实现多少秒后隐藏图片Apr 20, 2022 pm 05:33 PM

实现方法:1、用“$("img").delay(毫秒数).fadeOut()”语句,delay()设置延迟秒数;2、用“setTimeout(function(){ $("img").hide(); },毫秒值);”语句,通过定时器来延迟。

axios与jquery的区别是什么axios与jquery的区别是什么Apr 20, 2022 pm 06:18 PM

区别:1、axios是一个异步请求框架,用于封装底层的XMLHttpRequest,而jquery是一个JavaScript库,只是顺便封装了dom操作;2、axios是基于承诺对象的,可以用承诺对象中的方法,而jquery不基于承诺对象。

jquery怎么修改min-height样式jquery怎么修改min-height样式Apr 20, 2022 pm 12:19 PM

修改方法:1、用css()设置新样式,语法“$(元素).css("min-height","新值")”;2、用attr(),通过设置style属性来添加新样式,语法“$(元素).attr("style","min-height:新值")”。

jquery怎么在body中增加元素jquery怎么在body中增加元素Apr 22, 2022 am 11:13 AM

增加元素的方法:1、用append(),语法“$("body").append(新元素)”,可向body内部的末尾处增加元素;2、用prepend(),语法“$("body").prepend(新元素)”,可向body内部的开始处增加元素。

jquery怎么删除div内所有子元素jquery怎么删除div内所有子元素Apr 21, 2022 pm 07:08 PM

删除方法:1、用empty(),语法“$("div").empty();”,可删除所有子节点和内容;2、用children()和remove(),语法“$("div").children().remove();”,只删除子元素,不删除内容。

jquery中apply()方法怎么用jquery中apply()方法怎么用Apr 24, 2022 pm 05:35 PM

在jquery中,apply()方法用于改变this指向,使用另一个对象替换当前对象,是应用某一对象的一个方法,语法为“apply(thisobj,[argarray])”;参数argarray表示的是以数组的形式进行传递。

jquery on()有几个参数jquery on()有几个参数Apr 21, 2022 am 11:29 AM

on()方法有4个参数:1、第一个参数不可省略,规定要从被选元素添加的一个或多个事件或命名空间;2、第二个参数可省略,规定元素的事件处理程序;3、第三个参数可省略,规定传递到函数的额外数据;4、第四个参数可省略,规定当事件发生时运行的函数。

jquery怎么去掉只读属性jquery怎么去掉只读属性Apr 20, 2022 pm 07:55 PM

去掉方法:1、用“$(selector).removeAttr("readonly")”语句删除readonly属性;2、用“$(selector).attr("readonly",false)”将readonly属性的值设置为false。

See all articles

핫 AI 도구

Undresser.AI Undress

Undresser.AI Undress

사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover

AI Clothes Remover

사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool

Undress AI Tool

무료로 이미지를 벗다

Clothoff.io

Clothoff.io

AI 옷 제거제

AI Hentai Generator

AI Hentai Generator

AI Hentai를 무료로 생성하십시오.

뜨거운 도구

mPDF

mPDF

mPDF는 UTF-8로 인코딩된 HTML에서 PDF 파일을 생성할 수 있는 PHP 라이브러리입니다. 원저자인 Ian Back은 자신의 웹 사이트에서 "즉시" PDF 파일을 출력하고 다양한 언어를 처리하기 위해 mPDF를 작성했습니다. HTML2FPDF와 같은 원본 스크립트보다 유니코드 글꼴을 사용할 때 속도가 느리고 더 큰 파일을 생성하지만 CSS 스타일 등을 지원하고 많은 개선 사항이 있습니다. RTL(아랍어, 히브리어), CJK(중국어, 일본어, 한국어)를 포함한 거의 모든 언어를 지원합니다. 중첩된 블록 수준 요소(예: P, DIV)를 지원합니다.

SublimeText3 영어 버전

SublimeText3 영어 버전

권장 사항: Win 버전, 코드 프롬프트 지원!

Dreamweaver Mac版

Dreamweaver Mac版

시각적 웹 개발 도구

Atom Editor Mac 버전 다운로드

Atom Editor Mac 버전 다운로드

가장 인기 있는 오픈 소스 편집기

스튜디오 13.0.1 보내기

스튜디오 13.0.1 보내기

강력한 PHP 통합 개발 환경