beforeinput
HTML
<div class="editor" contenteditable>
</div>
<div class="text_see">
</div>
CSS
.editor {
background: #fff;
border: 1px solid #afafaf;
height: 200px;
padding: 4px;
}
JavaScript
let editor = document.querySelector('.editor');
let textsee = document.querySelector('.text_see');
[
'beforeinput'
].forEach(eventName => {
editor.addEventListener(eventName, e => {
let dataTransferText = e.dataTransfer && e.dataTransfer.getData('text/plain');
textsee.innerHTML = e.data;
console.log({
type: eventName,
code: e.code,
inputType: e.inputType,
data: e.data,
dataTransferText,
targetRanges: e.getTargetRanges && e.getTargetRanges()
});
});
});