function suggest(baseUrl , data) { var wordInput = $("#userName"); wordInput.keyup(function(event) { alert(1); }//调用这个函数,弹出一个窗口,内有输入框id为userName, //第一次弹出窗口,在输入框内按一次键,弹出一次alert //关闭窗口在从新进入,在输入框内按两次键,弹出两次alert //如此递增 ,为什么啊 ,多谢 }
를 처리합니다. 키를 두 번 누르면 두 번 재생됩니다. 어떤 효과를 원하시나요? 보통은 특정 키를 누른 후 판단하고 작업을 수행해야 합니다
문제 설명이 잘못되었습니다
//처음 창이 뜨면 입력창에서 키를 한 번 누르면 경고창이 뜹니다 up
//창을 닫고 다시 시작 엔터하고 입력창에 키를 두번 누르면 알림이 두번 뜹니다
//창을 닫고 다시 입력하고 입력창에 키를 두번 누르면 알림이 3번이나 뜹니다
//이렇게 늘어나는데 왜 고마워요
해야합니다. 반복 바인딩 문제에 대해 팝업 창 이후에 메소드가 트리거됩니까? 특별한 요구사항이 있나요? 처음에 트리거되도록 변경하시겠습니까? 그렇게 하면 이벤트를 한 번만 바인딩해도 문제가 없을 것입니다
function suggest(baseUrl , data) { var wordInput = $("#userName"); var wordInputOffset = wordInput.offset() alert(2); wordInput.keyup(function(event) { alert(1); var myEvent = event || window.event; var autoNode = $("#auto"); }} //alert(2);这个alert很正常,所以应该不是你说的问题
keyup은 키를 한 번 누르고 올렸다가 다시 누르고 다시 올리면 정상 결과입니다. . 이것이 귀하의 목적이 아닐 경우, 원하는 결과를 알려주시면 조언을 제공해 드리겠습니다.
바인딩 이벤트의 코드 위치에 문제가 있습니다. 전체 코드를 반복적으로 바인딩해야 합니다. 또는 이 방법
wordInput.unbind('keyup').keyup(function(event)...
은 먼저 이전에 바인딩된 이벤트를 바인딩 해제한 다음 다시 바인딩하는 것입니다
위 내용은 Jquery 처리 키보드 키업 이벤트 상세 소개의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!