1. 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;
  }
};
 

Posted by Nightly Luna
,
® © Tanny Tales
/ rss