Die Google autocomplete API scheint nicht zu aktivieren, indem Inhalt in eine Texteingabe mit der Maus eingefügt wird. Es funktioniert gut, wenn die Tastatur überhaupt beteiligt ist, aber nicht mit nur der Maus.Googles Autocomplete wird nicht durch Einfügen mit der Maus aktiviert
Ich habe jedoch bemerkt, dass, nachdem Sie Ihren Inhalt in die Texteingabe einfügen, es von fast jedem Tastendruck (getestete Rechtspfeiltaste, Ende-Taste, Leerzeichen) aktiviert wird.
Sie können es hier auf ihrer autocomplete demo Website repro.
Ist das ein Fehler? oder wie entworfen? Wenn es wie vorgesehen ist, wie kann man Abhilfe schaffen? Ich habe dies bisher als Workaround, aber keine simulierten Tastenereignisse scheinen zu funktionieren.
$('.txtLocation').bind("paste", function (e)
{
$('.txtLocation').focus();
var e = jQuery.Event("keydown");
e.keyCode = 39; //39=Arrow Right
$('.txtLocation').trigger(e);
});
Nicht schlecht. Dieser Fix funktioniert in Opera, FF, Chrome und Safari, aber nicht in IE, da er immer noch dort gelöscht wird. Wrapped es in .ready() und musste die Funktion über den Verweis auf es verschieben, damit es ohne Fehler ausgeführt werden konnte. Ich nehme an, ich werde das lassen, da es alle Browser außer IE behebt, aber immer noch keine vollständige Lösung. Netter Versuch, +1 für Anstrengung. Irgendwelche anderen Ideen für IE? – johntrepreneur
Ich sage dir ... verdammter IE-Mann ... Und natürlich, wenn es einen Browser gibt, in dem die Benutzer eher das Rechtsklick-Menü verwenden, ist es das! Haben Sie versucht, die setTimeout-Verzögerung zu erhöhen, um zu sehen, ob das Dinge im IE ändert? –
Hm ... Das Ändern der Timeout-Verzögerung behebt das IE-Problem nicht. Gespielt eine Weile, aber keine Würfel - beginnend zu denken, dass die "Lösung" für IE ist, ein DIV zu verbergen, die eine Nachricht enthält, die IE-Benutzer des Fehlers anruft und vorschlägt, sie STRG + V zum Einfügen zu verwenden. –