webentwicklung-frage-antwort-db.com.de

iPad Safari - Tastatur verschwinden lassen

Wenn ich im iPad Safari-Browser den Fokus von einem Textfeld in ein Dropdown-Menü verändere, bleibt die Tastatur immer noch erhalten.

Indirekt betrachtet suche ich ein Äquivalent von (aber in Mobile Safari)

[tempTextField resignFirstResponder]; 
55
testndtv

Ich habe die Lösung dafür unter http://uihacker.blogspot.com/2011/10/javascript-hide-ios-soft-keyboard.html gefunden. Im Wesentlichen einfach das tun (es hat für mich funktioniert):

var hideKeyboard = function() {
    document.activeElement.blur();
    $("input").blur();
};
149
rdoggett

Ich hatte ein iPad mit iOS 5.0.1, das die Tastatur nach erfolgreichem Login auf meiner Website nicht verbirgt. Ich habe es gelöst, indem ich einfach den Javascript-Befehl ausgeführt habe

document.activeElement.blur();

nach erfolgreichem login und jetzt ist die tastatur richtig verborgen :-)

18
lucaferrario

Ich weiß, das ist eine etwas ältere Frage, aber ich habe heute die Antwort dafür gefunden, und die Antwort ist peinlich einfach ... Ich habe viel mehr Zeit aufgewendet, als ich zugeben möchte, dies herauszufinden.

So verhindern Sie, dass die Tastatur eingeschaltet ist:

<input type="text" name="someInput" />

wenn Sie etwas wie eine jQuery UI Datepicker machen wollen ...

füge hinzu ein schreibgeschützt Attribut wie folgt:

<input type="text" name="someInput" readonly="readonly" />

Wenn Sie versuchen, auf Leute zu achten, bei denen JS deaktiviert ist, können Sie das Attribut immer weglassen und es in Ihren Code einfügen:

$('[name=someInput]').attr('readonly','readonly');

Hoffe das hilft.

Hier ist ein jsFiddle, das das Konzept demonstriert: http://jsfiddle.net/3QLBz/5/

15
BLSully
$("#txt").on("focus", function(){
    $(this).blur();
});

funktioniert mit Jquery UI Datepicker auf dem IPad

5
zenon

Ich rufe .focus () in einem anderen Textfeld auf und die Tastatur verschwindet. Ich verwende das Sencha-Touch-Framework. Das Textfeld, auf das verwiesen wird, ist ein Ext.Text-Objekt.

Ich weiß, dass dies nicht intuitiv ist, aber es scheint für mich zu funktionieren

1
Gerry Eng

Version ohne jQuery:

function hideKeyboard () {
    document.activeElement.blur();
    Array.prototype.forEach.call(document.querySelectorAll('input, textarea'), function(it) { 
        it.blur(); 
    });
}
0
Pylinux

Die iPad- und iPhone-Tastatur sollte nicht mehr angezeigt werden, wenn die Eingabe den Fokus verliert. 

Das habe ich auf mobilen Geräten/Tablets herausgefunden
Safari behandelt das Klickereignis nur für Elemente mit cursor:pointer Eigentum .

Ich habe endlich cursor:pointer am Body Tag für mobile/Tablet-Geräte hinzugefügt und es funktioniert wie ein Zauber.

Kleine probe

body {
    @media screen and (max-width: 1024px) { // IPad breakpoint
      cursor: pointer; // Fix iPhone/iPad click issue
    }
  }
}
0
Disfigure