동일한 이벤트가 반복적으로 발생하지 않도록 하는 방법
이번에는 동일한 이벤트가 반복적으로 발생하는 것을 방지하는 방법과 동일한 이벤트가 반복적으로 발생하는 것을 방지하기 위한 주의사항에 대해 알려드리겠습니다. 실제 사례를 살펴보겠습니다.
반복 트리거는 사용자가 데이터를 제출하기 위해 반복적으로 클릭하는 것을 방지하기 위한 것입니다. 일반적으로 클릭 후 응답이 없으면 다시 클릭합니다. 이는 사용자 경험 관점에서 수행되어야 할 뿐만 아니라 js 또는 php 프로그램 스크립트에서도 수행되어야 합니다. 사용자가 클릭이 서버에 제출되어 처리되고 있음을 알 수 있도록 이 반복되는 트리거 문제를 처리하기 위한 스크립트를 정리하겠습니다.
클릭과 같이 여러 번 이벤트가 빠르게 반복적으로 트리거되어 코드가 두 번 실행되어 많은 결과가 발생합니다. 현재 많은 솔루션이 있지만 거의 모두 제한 사항이 있습니다. 예를 들어 Ajax 양식에서 사용자가 한 번에 여러 번 클릭하는 것을 방지하는 경우 처음 클릭할 때 제출 버튼을 고정하고 다음에는 해제할 수 있습니다. 다시 클릭하는 것은 허용됩니다. 많은 사람들이 이렇게 하지만 다른 상황에서는 그리 효과적이지 않습니다.
다음은 권장되는 좋은 방법입니다. 먼저 함수를 던져보세요.
var _timer = {}; function delay_till_last(id, fn, wait) { if (_timer[id]) { window.clearTimeout(_timer[id]); delete _timer[id]; } return _timer[id] = window.setTimeout(function() { fn(); delete _timer[id]; }, wait); }
사용방법
$dom.on('click', function() { delay_till_last('id', function() {//注意 id 是唯一的 //响应事件 }, 300); });
위 코드는 클릭 후 300ms 동안 대기할 수 있으며, 300ms 이내에 다시 이벤트가 발생하면 마지막 클릭이 취소되고, 이를 반복합니다. 대기가 완료될 때까지 300밀리초 동안 기다린 후 이벤트에 응답하세요.
이 기능은 초점이 맞지 않을 때까지 기다리지 않고 입력된 이메일 주소를 기반으로 실시간으로 입력을 확인하거나 아바타를 끌어오는 등 매우 유용합니다.
예
Button BUTTON 클래스
a Label 클래스
첫 번째 상황의 경우 버튼에는 클릭 가능 여부를 제어할 수 없도록 비활성화된 속성이 있습니다
<input type="button" value="Click" id="subBtn"/> <script type="text/javascript"> function myFunc(){ //code //执行某段代码后可选择移除disabled属性,让button可以再次被点击 $("#subBtn").removeAttr("disabled"); } $("#subBtn").click(function(){ //让button无法再次点击 $(this).attr("disabled","disabled"); //执行其它代码,比如提交事件等 myFunc(); }); </script>
당신은 이 기사를 읽었을 것입니다. 더 흥미로운 정보를 얻으려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요!
추천 자료:
위 내용은 동일한 이벤트가 반복적으로 발생하지 않도록 하는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

핫 AI 도구

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

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

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

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

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제










![이벤트 ID 4660: 개체가 삭제되었습니다. [수정]](https://img.php.cn/upload/article/000/887/227/168834320512143.png?x-oss-process=image/resize,m_fill,h_207,w_330)
독자 중 일부는 이벤트 ID4660을 경험했습니다. 그들은 무엇을 해야 할지 확신하지 못하는 경우가 많으므로 이 가이드에서 이에 대해 설명합니다. 이벤트 ID 4660은 일반적으로 개체가 삭제될 때 기록되므로 컴퓨터에서 이 문제를 해결할 수 있는 몇 가지 실용적인 방법도 살펴보겠습니다. 이벤트 ID4660이란 무엇입니까? 이벤트 ID 4660은 Active Directory의 개체와 관련되어 있으며 다음 요소에 의해 트리거됩니다. 개체 삭제 – Active Directory에서 개체가 삭제될 때마다 이벤트 ID 4660이 포함된 보안 이벤트가 기록됩니다. 수동 변경 - 사용자 또는 관리자가 개체의 사용 권한을 수동으로 변경할 때 이벤트 ID 4660이 생성될 수 있습니다. 이는 권한 설정을 변경하거나, 액세스 수준을 수정하거나, 사람이나 그룹을 추가 또는 제거할 때 발생할 수 있습니다.

iOS 16 이상을 실행하는 iPhone에서는 예정된 캘린더 이벤트를 잠금 화면에 직접 표시할 수 있습니다. 이 작업이 어떻게 수행되었는지 알아보려면 계속 읽어보세요. 시계 페이스 컴플리케이션 덕분에 많은 Apple Watch 사용자는 손목을 통해 다음 캘린더 이벤트를 확인하는 데 익숙합니다. iOS16 및 잠금 화면 위젯의 등장으로 기기 잠금을 해제하지 않고도 iPhone에서 직접 동일한 캘린더 이벤트 정보를 볼 수 있습니다. 캘린더 잠금 화면 위젯은 두 가지 형태로 제공되며, 다음 예정된 이벤트 시간을 추적하거나 이벤트 이름과 시간을 표시하는 더 큰 위젯을 사용할 수 있습니다. 위젯 추가를 시작하려면 Face ID 또는 Touch ID를 사용하여 iPhone을 잠금 해제하고 길게 누르세요.

win10에서 엣지 브라우저를 사용하는 많은 친구들이 웹 페이지가 반복적으로 열리는 문제에 직면했는데, 이는 어떻게 해결해야 할까요? 아래에서 자세한 솔루션을 살펴보겠습니다. 엣지 브라우저가 계속해서 웹 페이지를 열 경우 대처 방법: 1. 엣지 브라우저에 들어가서 오른쪽 상단에 있는 세 개의 점을 클릭합니다. 2. 작업 표시줄에서 "설정"을 클릭하세요. 3. "Microsoft Edge 열기 방법"을 찾습니다. 4. 드롭다운 메뉴를 클릭하고 "시작 페이지"를 선택합니다. 5. 문제를 해결하려면 완료 후 브라우저를 다시 시작하세요.

입력 상자에 값이 추가되면 oninput 이벤트가 발생합니다. JavaScript에서 oninput 이벤트를 구현하는 방법을 이해하려면 다음 코드를 실행해 보세요. - 예<!DOCTYPEhtml><html> <body> <p>아래 쓰기:</p> <inputtype="text"

jQuery는 DOM 조작, 이벤트 처리, 애니메이션 효과 등을 단순화하는 데 사용할 수 있는 인기 있는 JavaScript 라이브러리입니다. 웹 개발에서 우리는 선택 요소에 대한 이벤트 바인딩을 변경해야 하는 상황에 자주 직면합니다. 이 기사에서는 jQuery를 사용하여 선택 요소 변경 이벤트를 바인딩하는 방법을 소개하고 특정 코드 예제를 제공합니다. 먼저 라벨을 사용하여 옵션이 포함된 드롭다운 메뉴를 만들어야 합니다.

Oracle 데이터베이스에서 중복된 데이터를 하나만 추출하는 방법은 무엇입니까? 일상적인 데이터베이스 작업에서 중복된 데이터를 추출해야 하는 상황이 자주 발생합니다. 때로는 모든 중복 데이터를 나열하는 대신 중복 데이터 중 하나를 찾고 싶을 때가 있습니다. Oracle 데이터베이스에서는 일부 SQL 문을 사용하여 이러한 목적을 달성할 수 있습니다. 다음으로는 오라클 데이터베이스에서 중복된 데이터를 한 조각만 추출하는 방법을 소개하고 구체적인 코드 예시를 제공하겠습니다. 1. ROWID 함수를 사용하세요. ROWID는 Ora입니다.

jquery에서 일반적으로 사용되는 이벤트는 다음과 같습니다. 1. 창 이벤트 2. 마우스 클릭, 이동 이벤트, 이동 이벤트 등을 포함하여 사용자가 문서에서 마우스를 이동하거나 클릭할 때 생성되는 이벤트입니다. 3. 키보드 이벤트, 키 누르기 이벤트, 키 놓기 이벤트 등을 포함하여 사용자가 키보드의 키를 누르거나 놓을 때마다 이벤트가 생성됩니다. 4. 요소가 포커스를 얻을 때와 같은 폼 이벤트, focus(); 이벤트가 트리거되고 포커스를 잃으면 Blur() 이벤트가 트리거되고 양식이 제출될 때 submit() 이벤트가 트리거됩니다.

PHP 프로젝트에서 달력 기능과 이벤트 알림을 구현하는 방법은 무엇입니까? 캘린더 기능과 이벤트 알림은 웹 애플리케이션을 개발할 때 일반적인 요구 사항 중 하나입니다. 개인 일정 관리, 팀 협업, 온라인 이벤트 예약 등 캘린더 기능을 통해 편리한 시간 관리와 거래 조율이 가능합니다. PHP 프로젝트에서 달력 기능 및 이벤트 알림 구현은 다음 단계를 통해 완료할 수 있습니다. 데이터베이스 디자인 먼저 달력 이벤트에 대한 정보를 저장할 데이터베이스 테이블을 디자인해야 합니다. 단순한 디자인에는 다음 필드가 포함될 수 있습니다. ID: 이벤트에 고유한 필드
