大家好,我正在制作一个文本编辑器,它使用jQuery自动完成括号和引号。要做到这一点,我正在使用密钥码,然而,它似乎[和{共享一个密钥码(与"one_answers"相同(。我如何在下面的函数中区分这些:
$("#input").on("keyup", function(e) {
if (e.which == 219) {}
});
KeyboardEvent#已弃用。
使用KeyboardEvent#key
I.E.e.key === '['
或e.key === '{'
不可能为{
和[
或'
和"
获取不同的密钥代码。但是,如果您想检查密钥是否为[
的{
,则可以使用以下逻辑:
$(document).on("keyup", function(e) {
if (e.which == 219 && e.shiftKey) {
console.log('{ was pressed');
}
if (e.which == 219 && !e.shiftKey) {
console.log('[ was pressed');
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
也可以使用e.key === '{'
和e.key ==='['
直接检查
希望能有所帮助。
使用此
$(document).on("keyup", function(e) {
if (e.which == 219 && e.shiftKey) {
console.log('perssed:{');
} else if (e.which == 219 && (!e.shiftKey)) {
console.log('perssed:[');
}
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>