Search code examples
javascriptkeyboard-shortcutsuserscripts

How can I prevent a custom key bind from making a noise?


Rather vague title, I know, but I'm binding a custom key event to the document object to catch AltR combination keypresses, like this:

document.body.onkeydown = function(event){
    event = event || window.event;
    var keycode = event.charCode || event.keyCode;
    if (keycode === 82) {
        if (event.altKey) {
            if (!canReload) {
                canReload = true;
                window.location.href += "#doGreaseRefresh";
            } else {
                canReload = false;
                window.location.href = window.location.href.replace("#doGreaseRefresh", "");
            }

            return false;
        }
    }
}

The code runs as expected but also produces a rather annoying "beep" sound as well. How can I prevent this? return false didn't prove to be the answer, so I'm wondering if it's even possible.

Oh, and if you're wondering, this is in a Chrome userscript (Content script) to refresh Stack Overflow's home page every 10 seconds if I've pressed AltR, and to stop refreshing once I've pressed AltR again. :)


Solution

  • Not being able to stop the beep is apparently a bug in Chrome: http://code.google.com/p/chromium/issues/detail?id=105500. return false works in Firefox without a beep.

    Cheers-