이 글에서는 jQuery에서 후속 실행 내용을 취소하는 예제를 주로 소개하고 있으며, 코드가 이해하기 쉽습니다. 필요한 친구들 꼭 보세요
<html xmlns="http://www.w3.org/1999/xhtml"> <head> <title></title> <script type="text/javascript"> //点击a标签,不进行页面跳转 window.onload = function () { var obj = document.getElementById("myhref"); obj.onclick = function (event) { //取消默认行为 //return false; //分浏览器 //IE下 //01.第一道能力检测 event = event || window.event; if (event.preventDefault) { //非IE下 event.preventDefault(); } else { event.returnValue = false; } }; } </script> </head> <body> <a id="myhref" href="http://www.baidu.com">去百度</a> </body> </html>
여기서 a 태그의 클릭 효과는 원래 Baidu 페이지로 이동하는 것이지만 매개변수를 통해 기본 동작을 취소하여 이 후속 콘텐츠를 만들 수 있습니다. 클릭 이벤트가 실행되지 않았습니다.
동일한 라벨을 클릭한 후 여러 이벤트가 발생하는 경우가 있습니다. 첫 번째 이벤트만 실행하고 후속 이벤트를 취소하려면 이를 방지하는 코드를 추가할 수 있습니다.
d12a20947a7afb7591874baea89f6d8d저를 클릭하세요!54bdf357c58b8a65c66d7c19c8e4d114
포스트바운드 이벤트를 방지하는 방법 jquery
페이지 로딩 프로세스 중에 코드가 이벤트 바인딩을 완료했습니다. 바인딩 후 이벤트를 방지할 수 있는 방법은 없지만 현재 지정된 노드의 이벤트 바인딩을 삭제할 수 있습니다. 방법은 다음과 같습니다.
$("#btn").click(function(){ if($("#tx").val()==""){ alert("e1"); }else{ //删除后绑定的事件。。。 $("#btn").unbind('click'); } });
설명:
unbind([type],[data])
bind()의 역연산은 일치하는 각 요소에서 바인딩을 제거합니다. 결정된 이벤트.
매개변수가 없으면 바인딩된 이벤트를 모두 삭제하세요.
bind()로 등록한 맞춤 이벤트를 바인딩 해제할 수 있습니다.
I 이벤트 유형이 매개변수로 제공되면 해당 유형의 바인딩된 이벤트만 제거됩니다.
바인딩 시 전달된 핸들러 함수를 두 번째 매개변수로 사용하면 해당 이벤트 핸들러만 삭제됩니다.
jquery: 두 번째 클릭 이벤트를 방지하는 방법은 무엇입니까?
jquery는 한 번의 클릭만 실행하는 메서드를 제공합니다
obj.one(function(){ });
. 또는 obj.unbind("click")를 사용하여 클릭 이벤트를 취소합니다