Javascript textarea keydown 检测是否按下 Alt gr 键并阻止其进一步操作

问题描述 投票:0回答:1

我的文本区域有字符限制,当达到 1000 个字符中的 999 个时,我不想输入任何重音字符。 我无法捕获组合键的最终输出,因此当只剩下 1 个字符时,我需要检测 Alt gr 键被按下并阻止其进一步操作,因为不继续该组合。

keyDownEvent(e){
  if ( (charactersLeft === maxLength -1) && e.keyCode === 18) {
    e.preventDefault();
  }
}

上面的方法不起作用,仍然发生组合键并且正在打印重音键(alt gr + a = ā)。如何停止这个事件。

javascript angular input textarea onkeydown
1个回答
0
投票

您仅检查

alt
键,但您还需要检查
ctrl
键。

  // Check if Ctrl and Alt are pressed together
  if (charactersLeft === maxLength - 1 && e.ctrlKey && e.altKey) {
    e.preventDefault();
    // Optionally, alert the user or handle the logic here
  }
© www.soinside.com 2019 - 2024. All rights reserved.