-
2016. 1. 27. 19:35 개발자료/W3C
stackoverflow
http://stackoverflow.com/questions/3080529/make-a-br-instead-of-div-div-by-pressing-enter-on-a-contenteditable
div , p 태그로 개행이 되어버리면 문서가 지저분해집니다
보통 위지웍에서는 div , p 를 쓰는데 shift + enter 키를 쓸때 br 을 입력하도록 하고 있어요
위지웍을 따로 만든다면 버튼으로 개행 기능을 제공할 수 있음
<div contentEditable="true">Edit</div>
var div=document.qeurySelector("[contentEditable=\"true\"]");
div.onkeyup=function(){
var a=document.activeElement;
if( a.lastChild && a.lastChild.nodeName!="BR" ){
a.appendChild(document.createElement("br"));
}
};
div.onkeypress=function(e){
if( e.keyCode==13 ){
var selection=window.getSelection(),
range=selection.getRangeAt(0),
br=document.createElement("br");
range.deleteContents();
range.insertNode(br);
range.setStartAfter(br);
range.setEndAfter(br);
range.collapse(false);
selection.removeAllRanges();
selection.addRange(range);
return false;
}
};