michitaro / keybind

This module provide a way for listening for key combination events with simple API.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Keybind

This module provide a way for listening for key combination events with simple API.

Example (Source of the working demo)

import * as keybind from "@hscmap/keybind"

window.addEventListener('load', () => {
    keybind.on('shift+x', () => alert('shift + X'))
    keybind.on('alt+x', () => alert('alt + X'))
    keybind.on('ctrl+x', () => alert('ctrl + X'))
    keybind.on('meta+x', () => alert('meta + X'))

    // can be triggered only once
    const off = keybind.on('shift+ctrl+x', () => {
        alert('shift + ctrl + X (triggered only once)')
        off()
    })

    const sources = ['shift+x', 'alt+x', 'ctrl+x', 'meta+x', 'shift+ctrl+x']
    for (const s of sources) {
        const html = keybind.html(s)
        const div = document.createElement('div')
        div.innerHTML = html
        document.body.appendChild(div)
    }
})

About

This module provide a way for listening for key combination events with simple API.


Languages

Language:TypeScript 79.6%Language:HTML 13.4%Language:JavaScript 7.0%