| 
19
 | 
     1 <!doctype html>
 | 
| 
 | 
     2 <html>
 | 
| 
 | 
     3 	<head>
 | 
| 
 | 
     4 		<meta name="viewport" content="width=device-width, initial-scale=1">
 | 
| 
 | 
     5 		<style>
 | 
| 
 | 
     6 			[contentEditable] {
 | 
| 
 | 
     7 				padding: 7px;
 | 
| 
 | 
     8 				border: 1px solid #777;
 | 
| 
 | 
     9 				white-space: pre-wrap;
 | 
| 
 | 
    10 			}
 | 
| 
 | 
    11 		</style>
 | 
| 
 | 
    12 		<script>
 | 
| 
 | 
    13 			function log() {
 | 
| 
 | 
    14 				let edit = document.querySelector('[contentEditable]');
 | 
| 
 | 
    15 				console.log(edit.innerHTML);
 | 
| 
 | 
    16 				//console.log(edit.textContent);
 | 
| 
 | 
    17 			}
 | 
| 
 | 
    18 			function test() {
 | 
| 
 | 
    19 				let edit = document.querySelector('[contentEditable]');
 | 
| 
 | 
    20 				edit.focus();
 | 
| 
 | 
    21 				let s = getSelection();
 | 
| 
 | 
    22 				let r = s.getRangeAt(0);
 | 
| 
 | 
    23 				//console.log(s);
 | 
| 
 | 
    24 				r.deleteContents();
 | 
| 
 | 
    25 				let t = document.createTextNode('\n');
 | 
| 
 | 
    26 				r.insertNode(t);
 | 
| 
 | 
    27 				r.collapse();
 | 
| 
 | 
    28 			}
 | 
| 
 | 
    29 		</script>
 | 
| 
 | 
    30 	</head>
 | 
| 
 | 
    31 	<body>
 | 
| 
 | 
    32 		<p>top</p>
 | 
| 
 | 
    33 		<div contentEditable>
 | 
| 
 | 
    34 aaa <b>bbb</b> <i>iii</i>
 | 
| 
 | 
    35 1
 | 
| 
 | 
    36 2
 | 
| 
 | 
    37 3
 | 
| 
 | 
    38 zzz
 | 
| 
 | 
    39 		</div>
 | 
| 
 | 
    40 		<p>
 | 
| 
 | 
    41 			<button onclick="log()">log</button>
 | 
| 
 | 
    42 			<button onclick="test()">test</button>
 | 
| 
 | 
    43 		</p>
 | 
| 
 | 
    44 		<p>bottom</p>
 | 
| 
 | 
    45 	</body>
 | 
| 
 | 
    46 </html>
 |