Raw Rich Text Editor
HTML
<div id="ed" contenteditable="true">
Select some text and press CMD+B for bold.
</div>
CSS
#ed {
outline: none;
}
JavaScript
document.getElementById("ed").addEventListener("keydown", function(e) {
// Only listen for CTRL/CMD without SHIFT
if ((e.ctrlKey || e.metaKey) && !e.shiftKey) {
switch(e.key.toLowerCase()) {
case "b":
e.preventDefault();
document.execCommand('bold');
break;
case "i":
e.preventDefault();
document.execCommand('italic');
break;
case "u":
e.preventDefault();
document.execCommand('insertUnorderedList');
break;
}
}
});