>웹 프론트엔드 >JS 튜토리얼 >jquery Blur가 실행되지 않는 문제에 대한 솔루션을 공유하세요.

jquery Blur가 실행되지 않는 문제에 대한 솔루션을 공유하세요.

黄舟
黄舟원래의
2017-06-26 14:19:063003검색

코드는 다음과 같습니다

$("#username").blur(function(){
        alert("ass");//鼠标点击Blur 按tab键在第一次的时候没有触发
        $.getJSON("send.php?action=get_&n="+Math.random(),function(data) {
            if (data.res!=="none"){
                  
              setTimeout("$('#gb_tip_layer').hide('100');",5000); 
             }
        });
         
    });
 
<input name="username" type="text" class="text-input" id="username"/>

내가 달성하고 싶은 효과는 사용자 이름 텍스트 상자가 흐려질 때 요청query을 트리거하는 것입니다. 그러나 문제는 마우스가 페이지의 다른 곳을 클릭하거나 TAB 키를 눌러 다음 양식 항목으로 이동하더라도 Blur 이벤트에 바인딩된 함수 가 실행되지 않는다는 것입니다. 블러는 다시 클릭해야만 실행됩니다. 상황은 어떻습니까? 어떻게 해결하나요? 감사합니다!

blur는 이벤트의 포커스에 의해 트리거됩니다.

blur 이벤트가 먼저 트리거되면 이 컨트롤에 포커스가 필요합니다. . 포스터가 이 이벤트를 어떻게 이해하는지 모르겠습니다.

먼저

$.getJSON("send.php?action=get_&n="+Math.random(),function(data) {
            if (data.res!=="none"){
                 
              setTimeout("$(&#39;#gb_tip_layer&#39;).hide(&#39;100&#39;);",5000); 
             }
        });

섹션을 제거하고 함수가 제대로 작동하는지 확인해 보세요.

내가 원하는 것은 사용자 이름의 값이 입력되고 포커스가 있을 때 사용자 이름의 값을 감지하는 함수를 트리거하는 것입니다. 데이터가 존재하는지 여부를 다음 텍스트 상자로 이동합니다. . .

아쉬운 점은 첫 번째 블러가 바운드 기능을 실행하지 않았고 두 번째 블러를 적용했을 때만 효과가 나타났다는 것입니다...

$("document").ready(function validate(){  }

코드만 준비하세요

설명하는 걸 깜빡했어요, $ ("#username")은 div 팝업 레이어에 위치하며 $("document").ready(function verify(){ }
..

를 사용하면 찾을 수 없습니다.

위 내용은 jquery Blur가 실행되지 않는 문제에 대한 솔루션을 공유하세요.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.