Wie kann ich mit jQuery eine KeyPress simulieren (auslösen?), Wenn auf einen Link geklickt wird? Zum Beispiel, wenn ein Benutzer auf den folgenden Link klickt:
<a id="clickforspace" href="#">Click Here</a>
Wenn Sie dann auf den Link klicken, ist es so, als würden sie die "Leertaste" auf ihrer Tastatur drücken.
So etwas nehme ich an:
$("#clickforspace").click(function(e) {
e.preventDefault();
//... Some type of code here to initiate "spacebar" //
});
Irgendwelche Ideen, wie dies erreicht werden kann?
javascript
jquery
keyboard
Dodinas
quelle
quelle
click
Leertaste zu ersetzen , wollten Sie eigentlich, dass der Browser auf der Seite nach unten scrollt? Das Drücken der Leertaste auf einem Link hat normalerweise den gleichen Effekt wie das Drücken der Bild-ab-Taste.Antworten:
Das Tastendruckereignis von jQuery soll diese Art von Arbeit erledigen. Sie können das Ereignis auslösen, indem Sie eine Zeichenfolge "keypress" an .trigger () übergeben. Um genauer zu sein, können Sie jedoch auch ein jQuery.Event-Objekt übergeben (geben Sie den Typ als "Tastendruck" an) und alle gewünschten Eigenschaften angeben, z. B. den Schlüsselcode als Leertaste.
http://docs.jquery.com/Events/trigger#eventdata
Lesen Sie die obige Dokumentation für weitere Details.
quelle
Ich glaube, das ist es, wonach Sie suchen:
var press = jQuery.Event("keypress"); press.ctrlKey = false; press.which = 40; $("whatever").trigger(press);
Von hier aus .
quelle
$("whatever").trigger($.Event("keydown", {keyCode: 40}))
Andere Option:
$(el).trigger({type: 'keypress', which: 13, keyCode: 13});
http://api.jquery.com/trigger/
quelle
which
ist. Nur daskeyCode
funktioniert für mich in SAPUI5 (jQuery 2.2.3 auf Chrome)Sie können dieses SendKeys jQuery-Plugin ausprobieren:
http://bililite.com/blog/2011/01/23/improved-sendkeys/
quelle
bililiteRange
Bibliothek abrufen : github.com/dwachss/bililiteRange (tatsächlich ist das jQuery-Plugin nur ein dünner Wrapper um diese unglaubliche Bibliothek, die für sich allein steht ).Das funktioniert:
var event = jQuery.Event('keypress'); event.which = 13; event.keyCode = 13; //keycode to trigger this for simulating enter jQuery(this).trigger(event);
quelle