我使用Keydrown插件,所以这与字母键很好用:
kd.W.down(function () {
//...
});
如何为lshift而不是W分配相同的功能? (我不知道如何在这里放一个键码而不是字母)。
如果可能的话,我如何选择2个密码并为lshift + W做点什么? (当两者同时被按下时)。
修改:
似乎通过键码选择任何键的最佳和最简单的方法是编辑插件本身 - 编辑KEY_MAP下的键码列表。例如,添加:
,'LSHIFT': 16
到列表中,然后拨打kd.LSHIFT.down
。
关于 lshift + W 的问题仍然存在 - 是否可以将2个密钥代码放在此KEY_MAP列表中的1个名称下? (将是最好/最简单的解决方案)
答案 0 :(得分:0)
所以在keydrown插件中编辑KEY_MAP下的列表,例如add:
,'LSHIFT': 16
LSHIFT + W 可以通过这种方式实现:
kd.W.press(function () {
kd.LSHIFT.press(function () {
//...
console.log();
});
//optional...
console.log();
});
kd.W.up(function () {
kd.LSHIFT.press(function () {
console.clear();
});
console.clear();
});
可以使用 down
代替press
,具体取决于所需的行为。要在更复杂的情况下绑定/取消绑定密钥,请使用Keydrown plugin instructions。
答案 1 :(得分:0)
我是Keydrown的开发人员。对不起我直到现在才看到这个! kd.map.js
supports the generic "shift" keycode(16
),但我不熟悉左移按钮的键码与具体的关键代码(有人请随意插入并澄清)
Anywho,如果将'LSHIFT': 16
添加到地图中,可以按照自己的意愿运行,这就是我推荐用于实现"左移+ W"功能性:
kd.LSHIFT.down(function () {
if (kd.W.isDown()) {
// Your code here
}
});
isDown
是一个较新的Keydrown API,是在我提出这个问题后引入的。
我希望这会有所帮助。如果LSHIFT
密码在supported browsers内保持一致,请提交Pull Request。