JavaScript je výkonný programovací jazyk, který vám umožňuje vytvářet interaktivní prvky na webových stránkách. Poskytuje také různé metody pro práci s událostmi, včetně událostí klávesnice. V tomto článku se podíváme na to, jak lze pomocí JavaScriptu stisknout tlačítko na klávesnici.
Když uživatel stiskne klávesu na klávesnici, dojde k události keydown nebo keyup, podle toho, kdy byla klávesa stisknuta a uvolněna. Chcete-li simulovat stisknutí tlačítka pomocí JavaScriptu, můžeme vytvořit a vyvolat speciální událost keydown nebo keyup s požadovaným kódem klávesy.
Kódy kláves v JavaScriptu jsou reprezentovány číselnými hodnotami. Například kód klávesy " Enter "je 13 a kód klávesy" mezera " je 32. Chcete-li stisknout tlačítko pomocí JavaScriptu, můžeme použít metodu dispatchEvent(), která nám umožňuje vytvořit a vyvolat událost. K tomu budeme potřebovat odkaz na prvek tlačítka, na který chceme kliknout.
Jak stisknout tlačítko na klávesnici pomocí JavaScriptu
JavaScript poskytuje možnost emulovat stisknutí tlačítka na klávesnici pomocí softwarového kódu, což může být užitečné, když je potřeba automatizovat interaktivní úkoly nebo simulovat vlastní vstup. V tomto článku se podíváme, jak to lze udělat.
Pro emulaci stisknutí tlačítka na klávesnici pomocí JavaScriptu můžeme využít událost keydown, který se generuje stisknutím klávesy a pomocí metody dispatchEvent k aktivaci této události.
Níže uvedený příklad ukazuje, jak lze pomocí JavaScriptu stisknout klávesu Enter při načítání stránky:
window.addEventListener('DOMContentLoaded', function() );document.dispatchEvent(event);>);
V tomto příkladu používáme událost DOMContentLoaded aby bylo zajištěno, že bude spuštěno až po úplném načtení obsahu stránky. Poté vytvoříme novou událost keydown s pomocí konstruktéra KeyboardEvent a zadejte kód klávesy, kterou chceme emulovat (v tomto případě kód klávesy Enter rovná 13). A nakonec tuto událost aktivujeme metodou dispatchEvent.
Tento přístup můžete také použít k emulaci stisku dalších kláves na klávesnici. Jednoduše nahraďte kód klávesy v metodě KeyboardEvent na příslušný kód požadovaného klíče.
Tímto způsobem můžete pomocí JavaScriptu emulovat stisknutí tlačítka na klávesnici pro automatizaci úloh a simulaci vlastního psaní. To může být užitečné při testování webových aplikací nebo při vytváření skriptů pro provádění určitých akcí.
Použití metody keydown()
- Vyberte položku, na které chcete emulovat stisk klávesy.
- Přidejte obslužnou rutinu události keydown () na vybranou položku.
- Uvnitř obslužné rutiny události identifikujte požadovanou klávesu, kterou chcete emulovat, pomocí kódu klávesy.
- Vyvolejte událost keydown () na vybrané položce pomocí metody dispatchEvent ().
Příklad použití metody keydown () k emulaci stisknutí klávesy "Enter":
const inputElement = document.getElementById('myInput');inputElement.addEventListener('keydown', function(event) >);const event = new KeyboardEvent('keydown', );inputElement.dispatchEvent(event);
Všimněte si, že použití metody keydown() umožňuje emulovat stisk klávesy na klávesnici, ale nezpůsobuje události související s touto akcí. Pokud chcete vyvolat a zpracovat událost související se stisknutím klávesy, musíte použít metody dispatchEvent() a addEventListener().
Přidání obslužné rutiny Události keyup()
Událost keyup nastává, když uživatel uvolní klávesu na klávesnici. Pomocí JavaScriptu lze k této události přidat obslužnou rutinu a provést určité kroky.
K přidání obslužné rutiny Události keyup byste měli použít metodu addEventListener. Níže je uveden příklad kódu:
// kód, který bude proveden při uvolnění klávesy
V rámci funkce obslužného programu je možné napsat kód, který bude proveden při uvolnění klávesy. Můžete například zkontrolovat, která klávesa byla uvolněna, a provést příslušné kroky.
Níže je uveden příklad kódu, který do konzole vloží kód uvolněné klávesy:
V tomto případě event.keyCode se používá k získání kódu klávesy, která byla uvolněna. Pomocí tohoto kódu lze určit, která klávesa byla uvolněna a provést příslušné kroky.
| Vlastnost event.keyCode | Popis |
|---|---|
| 65 | Klávesa "A" |
| 66 | Klávesa"B" |
| 67 | Klávesa "C" |
| . | . |
Výše je uvedena tabulka s některými hodnotami event.keyCode pro různé klávesy. Pomocí této tabulky můžete určit kód požadované klávesy a použít jej ve svém kódu.
Pomocí přidání obslužné rutiny Události keyup je tedy možné implementovat různé akce, když uvolníte klávesu na klávesnici pomocí JavaScriptu.