如何定义<;键>;元素为firefox扩展命令创建快捷键

如何定义<;键>;元素为firefox扩展命令创建快捷键,firefox,firefox-addon,xul,keyset,Firefox,Firefox Addon,Xul,Keyset,我需要定义快捷键Ctrl+。和Ctrl+/来调用我的扩展函数 以下是我的浏览器.xul覆盖中的内容: <keyset id="mainKeyset"> <key oncommand="window.alert('SLASH')" id="cue-cmd-1" keycode="VK_SLASH" modifiers="accel" /> <

我需要定义快捷键Ctrl+。和Ctrl+/来调用我的扩展函数

以下是我的
浏览器.xul
覆盖中的内容:

<keyset id="mainKeyset">
    <key oncommand="window.alert('SLASH')" 
             id="cue-cmd-1"
             keycode="VK_SLASH"
             modifiers="accel"
                />
    <key oncommand="window.alert('PERIOD')" 
             id="cue-cmd-2"
             keycode="VK_PERIOD"
             modifiers="accel"
                />
</keyset>

覆盖成功合并。但是,快捷键不起作用

如果我将
keycode=“VK_PERIOD”
更改为
key=“.”
,并将类似的
keycode=“VK_SLASH”
更改为
key=“/”
,快捷键将按预期工作

由于我允许用户将其首选快捷方式指定给命令,因此我需要使用
keycode
属性,以便能够使用
shift
修改器键

我缺少了什么?

modifiers=“accel”
在windows和linux上只是
ctrl
,在osx上是
cmd


尝试改用
modifiers=“control”

这很有趣,感谢您在测试中使用
键的提示。我认为它会起作用,我会测试一下。使用
modifiers=“control”
也会得到同样的结果。另一方面,使用
控件的AFAIK在MAC上不起作用。