gpt4 book ai didi

javascript - safari 上的 event.keyCode 和 charCode 为德语特殊标志提供 "undefined"

转载 作者:行者123 更新时间:2023-11-28 21:17:26 24 4
gpt4 key购买 nike

我正在 keyUp 上运行该函数:

function onKeyUpHandler(e) {
if(!e) var e = window.event;
var code;
if (e.keyCode) code = e.keyCode;
else if (e.which) code = e.which;
else if (e.charCode) code = e.charCode;
if (code < 37 || code > 40) { // not arrows
//do Stuff;
}

它适用于大多数浏览器中的所有字符,但 Safari(特别是在 iPad 上)对于某些特殊字符(如德语 ä、ü、ß 等)给出的代码为“未定义”(因此它不会“执行操作”)。所以我无法检查它是否是箭头。我不确定是否应该添加“or (typeof(code) == 'undefined') ”。你能帮我决定我应该做什么吗?

最佳答案

keyCodekeyupkeydown 事件中唯一需要的属性。它适用于所有主流浏览器,包括 Safari。这是您的函数的更好版本。我不确定是否还有其他问题;如果有请告诉我。

function onKeyUpHandler(e) {
e = e || window.event;
var code = e.keyCode;
if (code < 37 || code > 40) { // not arrows
//do Stuff;
}
}

以下是我认为有关 JavaScript 关键事件的权威页面:http://unixpapa.com/js/key.html

关于javascript - safari 上的 event.keyCode 和 charCode 为德语特殊标志提供 "undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7245093/

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