[JavaScript] Gibt es eine Möglichkeit, dass durch das Script eine Taste gedrückt wird?
Also kein onClickEvent, sondern, dass das Script selber zum Beispiel die Taste "Ctrl+C" drückt.
2 Antworten
Also Strg+C kannst du mit
document.execCommand('copy');
simulieren.
Generell kannst du das Drücken einer Taste (KeyDown-Event) wie folgt simulieren:
document.dispatchEvent(new KeyboardEvent('keydown', { keyCode: <Zahl>, altKey: <true|false>, ctrlKey: <true|false>}));
Den Keycode für eine Taste erfährst du hier: https://keycode.info/ oder in einer ASCII-Tabelle deiner Wahl.
document.dispatchEvent(new KeyboardEvent('keydown', { keyCode: 67, altKey: true }));
Oder, falls es nicht auf der ganzen Seite, sondern auf ein bestimmtes Element bezogen sein soll:
element.dispatchEvent(new KeyboardEvent('keydown', { keyCode: 67, altKey: true }));
Es gibt keine Fehlermeldung, aber es passiert nichts...
Also mit Alt+C möchte ich halt das automatische Synchronisieren der Zwischenablage zwischen PC und Android-Gerät triggern🤔
Du kannst natürlich nicht mit dem Broswer Tasten-Drücke ausserhalb des Browsers simulieren. Wo kämen wir denn da hin - Dann könnte eine Seite einfach Windows-Taste + R simulieren und dann beliebige Commands auf meiner Maschine eingeben ... Nene, das geht nich :D
Du kannst mit dem Browser nur simulieren, dass du im Browser eine Taste drückst. Ein Key-Logger oder ein externes Programm wie dieses Alt-C wird davon nichts mitbekommen. Ausser es ist irgendwie in den Browser Integriert, vlt. als Addon.
Ah okey, dann hat sich ja meine Theorie bestätigt, eben wegen dieser Sicherheit :D
var e = jQuery.Event("keydown");
e.which = 67;
e.ctrlkey = true;
$(document).trigger(e);
Und wie sehe das mit "Alt+C" aus?