jQuery keyUp Event im iOS Safari

Vor ein paar Tagen stolperte ich über einen fießen Bug im iOS Safari (iPhone, iPod, …). Google spuckte nichts aus – deshalb schreibe ich es hier kurz nieder.

Zum Problem: Auf einigen Apple Devices funktionierte ein jQuery Code nicht der auf ein keyUp Event lauschte – auf anderen Devices mit der gleichen iOS Version jedoch problemlos. Nach einigem rumprobieren stelle sich heraus, dass der Code nicht funktinierte sobald der “Private Mode” im Safari aktiv war. In diesem Modus wurde das “keyup” Event schlicht nicht ausgelöst.

Folgender Code funktioniert nicht wenn der “Private Mode” aktiviert ist:

$(someElement).keyup(function() {
    // do something
});

Wie folgt umgebaut funktioniert der Code sowohl im “Private Mode” als auch in der Stadard-Einstellung:

$(document).on('keyup', someElement, function() {
    // do something
});

Leave a Reply

Your email address will not be published. Required fields are marked *

π