gpt4 book ai didi

jquery - 将数组重置为空数组不起作用

转载 作者:行者123 更新时间:2023-12-01 00:15:00 24 4
gpt4 key购买 nike

我做错了什么?看来调用函数后数组并没有被清除。

如果您先按ctrl+c,然后按ctrl+alt+c,则不会调用第二个函数(仅当您第二次按时)。

var key = function (keys, fn) {
var arr = [];
$(document).on({
keydown: function (e) {
arr.push(e.which);
if (arr.join(', ') === keys) {
fn(e);
arr = [];
}
},
keyup: function (e) {
arr = [];
}
});
};

// ctrl + c
key('17, 67', function (e) {
alert('ctrl+c');
});

// ctrl + alt + c
key('17, 18, 67', function () {
alert('ctrl+alt+c');
});

这是一个 fiddle

最佳答案

代码中的问题不是数组。

您的键盘未被调用,因为您在看到警报窗口时松开了按键

检查此处的相同代码:http://jsfiddle.net/WucCQ/1/ - 观看控制台日志

var key = function (keys, fn) {
var arr = [];
$(document).on({
keydown: function (e) {
arr.push(e.which);
if (arr.join(', ') === keys) {
fn(e);
arr = [];
}
},
keyup: function (e) {
arr = [];
}
});
};

// ctrl + c
key('17, 67', function (e) {
console.log('ctrl+c');
});

// ctrl + alt + c
key('17, 18, 67', function () {
console.log('ctrl+alt+c');
});

关于jquery - 将数组重置为空数组不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14359384/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com