keyPress-Ereignis nicht auslösen bei Android-mobile
Ich bin mit backbone,marionette
für meine Anwendung.Ich benutzte denselben code für beide desktop and mobile
aber keypress
funktioniert nicht in mobile
.Ich machte eine Jsfiddle für die Prüfung.
Wenn Sie öffnen Sie diesen link in mobile
event nicht feuern,Wenn Sie in desktop
es brennen.Wie kann ich dieses Problem beheben.
kann mir jemand helfen.
Dank.
- Was ist die Android-version? >=4.4?
- Ich bin mit
motorola moto g
mit version4.4.2
- Check this out stackoverflow.com/questions/9302986/.... Das Problem mit android >=4.4, der browser nicht Feuer
keypress
Veranstaltungen die ganze Zeit. Verwendeninput
Ereignis, es ist zuverlässig. - Ich habe versucht deine Idee,aber
keycode
funktioniert nicht.können Sie überprüfen diehttp://jsfiddle.net/33Snz/14/
.Anreiseundefined
- Ah, mein schlechtes. Haben Sie Ihr problem, das Sie versuchen, zu verhindern, default, falls es keine Zahl ist. Deine Lösung ist korrekt, stackoverflow.com/a/22499179/1304559 für das Problem. Aber keypress-Ereignis nicht auslösen ist nicht gelöst, glaube ich 🙁
- Ich bin vor ein weiteres problem,können Sie diese
http://stackoverflow.com/questions/22503559/backspace-not-firing-the-keyup-event-in-android-mobile
.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Chrome mobile unterstützt keine Tastendruck-Ereignisse richtig für jetzt. Es ist eine langjährige Fehler für diese:
https://code.google.com/p/chromium/issues/detail?id=118639
Ich glaube, es sollte behoben werden, in v38.
Ich möchte zwei Ereignisse, die auf input-box.
Dies funktioniert auf desktop-webbrowser.
1)
onkeypress = return isNumberKey(event);
Dieser Arbeit wird für mobile
2)
onkeyup="numberMobile(event);"
Gelten sowohl Ereignis auf das Eingabefeld und es wird funktionieren.Nur Nachteil ist,Es machen es langsam.Aber jetzt sind wir mit ihm Leben müssen.
Gibt es ein Problem durch diese Lösung.Links die navigation nicht funktioniert.Ich werde zu aktualisieren, besser geeignete Lösung bald.
Getestet auf browserstack. Scheint zu funktionieren für mich.
Hier ist ein link zu Ihrer Kernaussage:
http://www.browserstack.com/start#os=android&os_version=4.1&device=Samsung+Galaxy+S+III&zoom_to_fit=true&full_screen=true&url=http%3A%2F%2Fjsfiddle.net%2F33Snz%2F3%2Fembedded%2Fresult%2F&speed=1&start=true
Können Sie lassen Sie wissen, was bestimmte andriod Gerät und browser Sie testen in.
motorola motog
- und browser -google chrome
.Schließlich fand ich ein problem,aber es funktioniert nicht in opera.Statt zu schreiben den code für numerische Felder.Ich habe gerade ein Attribut type='number' input-Feld in html-Datei.Jetzt nur numerische Tastenfeld kommt.So erfüllt er meine Anforderungen.Hier ist die JsFiddle
html-code:
jsFiddle
wurde es erwähnt in meiner Antwort.//"beforeinput #search_input":"typeOfField"
. Bitte korrigieren Sie mich, wenn mir etwas fehlttype='number'
,brauchen Sie nicht zu schreiben zusätzlichen code.deshalb habe ich Sie versteckt.keypress
Veranstaltungen. Dank für die Erklärung. Aktualisierung Ihrer Frage helfen würde, denn es klingt irreführend.Scheint es, wie
keypress
Ereignis verworfen wurde (Siehe https://developer.mozilla.org/en-US/docs/Web/Events/keypress) und es ist besser, verwenden Siekeydown
Fall jetzt, bevor alle browser drop-Unterstützung auf.