如何防止自定义键绑定发出噪音?

时间:2012-05-12 02:05:07

标签: javascript keyboard-shortcuts userscripts

相当模糊的标题,我知道,但是我将自定义键事件绑定到document对象以捕获 Alt R 组合按键,就像这样:

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;
        }
    }
}

代码按预期运行,但也会产生相当烦人的“嘟嘟”声。我怎么能阻止这个? return false没有证明是答案,所以我想知道它是否可能。

哦,如果你想知道,如果我按下了 Alt R,那么这是在Chrome用户脚本(内容脚本)中每隔10秒刷新一次Stack Overflow的主页kbd>,并在我再次按下 Alt R 后停止刷新。 :)

2 个答案:

答案 0 :(得分:1)

无法停止发出哔哔声显然是Chrome中的错误:http://code.google.com/p/chromium/issues/detail?id=105500return false可以在Firefox中运行而不会发出哔哔声。

干杯 -

答案 1 :(得分:1)

As ZachB points out,这似乎是Chrome的错误。

解决这个烦恼:

  1. 进入Windows控制面板。
  2. 选择声音系统声音
  3. (None)的声音分配Default Beep (无论如何,我喜欢这样做,因为它比它有用的烦恼多50倍)。