我正在开发一个Firefox插件,为此我已经使用了叠加,现在我希望如果有人按下键,如 control + j 它应该打开我的扩展,如果有人按下 ctrl + space ,它应该执行一个JavaScript函数。
我试过了:
<keyset id="mainKeyset">
<key id="keyOpen" keycode="VK_J" oncommand="document.getElementById('menuboard').showPopup(document.getElementById('mypanel'), -1, -1, 'popup', 'topleft', 'bottomleft');"/>
<key id="keyExecute" modifiers="control" keycode="VK_SPACE" oncommand="javascript:myfucntion();"/>
</keyset>
但是,如果它不能正常工作,我所遗漏的任何人都可以帮助我。
谢谢,
贾斯旺特
答案 0 :(得分:2)
我不知道为什么,但使用密钥而不是密钥代码可以工作:
<keyset id="mainKeyset">
<key id="key1" modifiers="control" key="j" oncommand="alert(1)"/>
<key id="key2" modifiers="control" key=" " oncommand="alert(2)"/>
</keyset>
通常情况下,如果你在oncommand中提供一个带有简单代码的简化测试用例并且说oncommand代码似乎没有被调用而不仅仅是说“它不工作”会更好。
并且oncommand =“javascript:....”毫无意义。丢失“javascript:”前缀。
答案 1 :(得分:0)
是的Nickolay,
你是对的,键工作而不是键码。
<key id="key1" modifiers="control" key="j" oncommand="alert('1')"/>
在编程中,有时会出现意外行为。
干杯,
贾斯旺特