Heim > Web-Frontend > js-Tutorial > Lösung für das Problem, dass der Fokus nach der JQuery-Unschärfe nicht fokussiert werden kann

Lösung für das Problem, dass der Fokus nach der JQuery-Unschärfe nicht fokussiert werden kann

黄舟
Freigeben: 2017-06-27 11:42:50
Original
1550 Leute haben es durchsucht

1: Bei vielen Kinderschuhen kann diese Situation auftreten:

Nach der Unschärfe von jquery kann der Fokus nicht mehr fokussiert werden.

2: Nutzungsszenario:

Wenn der Benutzer die Informationen eingibt und die E-Mail-Adresse leer ist, werden Sie aufgefordert, die E-Mail-Adresse einzugeben und den Cursor im Textfeld zu platzieren um die E-Mail-Adresse einzugeben, damit der Benutzer die E-Mail-Adresse erneut eingeben kann.

Natürlich werden wir die beiden Funktionen von jquey verwenden, um die oben genannten Anforderungen zu erfüllen:

$("#email").blur(function(){       if($("#email").val()==''){
            alert('请填写您的邮箱');
            $("#email").focus();    
       }    
})
Nach dem Login kopieren

Drei: Code-Erklärung:

Wenn das Textfeld zum Ausfüllen der E-Mail den Fokus verliert und die eingegebene E-Mail-Adresse leer ist, wird die Aufforderung „Bitte geben Sie Ihre E-Mail ein“ eingeblendet und erhält den Fokus des Textfelds zurück, um dem Benutzer die Eingabe zu erleichtern wieder eintreten.

Nachdem Sie test.html auf FF ausgeführt haben, werden Sie feststellen, dass das Popup-Fenster nicht angezeigt wird. Es ist offensichtlich kein Fehler im Code Die Ausführung im IE ist normal. Sowohl die Popup-Informationen als auch der Fokus werden abgerufen.

Viertens: Dann werden Sie bestimmt denken, dass es sich hierbei um ein weiteres Kompatibilitätsproblem handelt.

Ja. FF und IE haben uns hinsichtlich der Kompatibilität tatsächlich große Probleme bereitet.

5: Der Grund für das Problem dürfte sein, dass die Unschärfe- und Fokusmechanismen von FF und IE unterschiedlich sind.

FF-Fokus kann nur vor Unschärfe erfolgen.

6: Wie kann dieser Fehler behoben werden?

Verwenden Sie die eingestellteZeitAuszeit, um eine Verzögerung vorzunehmen.

Ändern Sie den Code wie folgt:

$("#email").blur(function(){    if($("#email").val()==''){
        alert('请填写您的邮箱');        //$("#email").focus();
        window.setTimeout (function(){ document.getElementById ('email'). select();},0 );     
    }    
})
Nach dem Login kopieren

Sieben: Läuft auf IE bzw. FF, perfekt kompatibel.

Das obige ist der detaillierte Inhalt vonLösung für das Problem, dass der Fokus nach der JQuery-Unschärfe nicht fokussiert werden kann. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage