禁止非直接输入

var lock = false;
var inputEle = document.getElementById('inputEle');
// input 事件中的处理逻辑, 这里仅仅打印文本
var todo = function (text) {
    console.log(text)
};
inputEle.addEventListener('compositionstart', function () {
    lock = true;
});
inputEle.addEventListener('compositionend', function (event) {
    lock = false;
    // compositionend 事件发生在 input 之后,故此需要此处调用 input 中逻辑
    todo(event.target.value);
});
inputEle.addEventListener('input', function (event) {
    // 忽略一切非直接输入,不做逻辑处理
    if (!lock) todo(event.target.value);
});

  

posted @ 2020-07-30 10:38  雲天望垂墨傾池  阅读(61)  评论(0编辑  收藏  举报