我使用以下代码来检测按键事件中的多个按键:
var down = [];
$(document).keydown(function (e) {
down[e.keyCode] = true;
}).keyup(function (e) {
if (down[17] && down[32]) {
// Do something
}
down[e.keyCode] = false;
});
但是,此热键 (CTRL + SPACE) 应该在输入字段具有焦点时使用。因此,每当我按下组合键时,它也会在输入字段中添加一个空格。
如何防止这种情况发生?我已经研究了禁用输入中空格的方法(例如 this ),但我不知道如何使其仅在我的按键事件中工作。
最佳答案
您可以尝试this 。我希望它有帮助。
var down = [];
$(document).keydown(function (e) {
down[e.keyCode] = true;
}).keypress(function (e) {
if (down[17] && down[32]) {
var $sampleTextBox = $("input#sampleTextBox");
$sampleTextBox.val($sampleTextBox.val().replace(/\s/g, ''));
alert($sampleTextBox.val().length)
alert("Ctrl + Space Pressed!");
}
down[e.keyCode] = false;
}).keyup(function (e) {
if (down[17] && down[32]) {
var $sampleTextBox = $("input#sampleTextBox");
$sampleTextBox.val($sampleTextBox.val().replace(/\s/g, ''));
alert($sampleTextBox.val().length)
alert("Ctrl + Space Pressed!");
}
down[e.keyCode] = false;
});
--
谢谢
super 编码器
关于javascript - 防止按键事件中输入字段出现空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30607471/