我想创建一个不允许输入任何字符的文本输入(与禁用输入相同,但鼠标光标仍然显示)
function loadPage() {
const el = document.getElementById('input-id');
el.addEventListener('keydown', (event) => {
event.preventDefault();
});
}
loadPage();
<input maxlength="0" id="input-id">
上面的代码适用于普通字母字符。 但是,当我使用IME输入日文全角字符时,它不起作用(仍然可以输入字符)
您知道问题出在哪里吗?有什么解决办法吗?
对于 IME 特定事件,请查看 Composition Event Types 规范。基本上,三个事件可以满足您的需要
compositionstart
、compositionupdate
和 compositionend
。