gpt4 book ai didi

javascript - 仅对真实 Angular 色按下按键?

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

简单的问题:我有带有内部标签的输入字段!就像本网站右上角的搜索框一样。当我开始输入其中的标签时,它被隐藏了。

出于可访问性的原因,我将真正的标签绝对定位在实际输入字段的后面。因此,我只是向输入字段添加一个类 fill ,这样背景颜色就不再透明了。

inputs.keydown(function (e) {
$(this).addClass(fill);
});

除了一点小缺陷之外,一切都工作正常。每当我聚焦输入字段并按下“Shift”、“Ctrl”或“CMD”等键时,标签就会消失。然而,这还没有输入!

知道该怎么做吗?

inputs.keydown(function (e) {
switch (e.keyCode) {
case 13: // Enter
case 16: // Shift
case 17: // Ctrl
case 18: // Alt
case 19: // Pause/Break
case 20: // Caps Lock
case 27: // Escape
case 35: // End
case 36: // Home
case 37: // Left
case 38: // Up
case 39: // Right
case 40: // Down

// Mac CMD Key
case 91: // Safari, Chrome
case 93: // Safari, Chrome
case 224: // Firefox
break;
}

$(this).addClass(fill);
});

这些将是我不想模糊标签的所有键码!当输入真实字符时,应该添加填充类。顺便提一句。是否有更好的语法来编写所有情况下的 switch 语句?

最佳答案

使用keypress()相反,如果您正在处理字符输入。它已经忽略了大多数您想要避免的键。它确实会在 Enter 处触发,但您可以按照此处已建议的相同方式轻松解释这一点。

$("input").keypress(function (e) {
if( e.which == 13 ){ return false; }
$(this).addClass(fill);
}

关于javascript - 仅对真实 Angular 色按下按键?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8742790/

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