1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34
|
<!DOCTYPE html>
<html>
<body>
<div id="editor" contenteditable></div>
<script>
const editor = document.getElementById('editor');
editor.focus();
var dataTransfer = {};
editor.addEventListener('paste', (event) => {
dataTransfer.types = Array.from(event.clipboardData.types);
dataTransfer.files = Array.from(event.clipboardData.files);
dataTransfer.items = Array.from(event.clipboardData.items).map(cloneItem);
});
function cloneItem(item) {
return {
kind: item.kind,
type: item.type,
file: item.getAsFile(),
}
}
var imageElement;
function insertFileAsImage(file) {
imageElement = document.createElement('img');
imageElement.onload = () => window.webkit.messageHandlers.testHandler.postMessage('loaded');
imageElement.src = URL.createObjectURL(file);
document.body.appendChild(imageElement);
}
</script>
</body>
</html>
|