js
JS - 인라인 편집 요소
인라인 편집은 텍스트 필드나 모든 종류의 HTML 요소들을 편집할 수 있는데, 이 말은 텍스트를 입력할 수 있는 형태로 바꾸어서 사용자가 HTML 형식의 문자열을 입력할 수 있다는 뜻입니다.
인라인 편집을 흔히 위지윅이라 부르며, 다음 속성을 사용할 수 있습니다.
아래 예제는 iframe 의 선택한 구간에 글자를 굵게 표시합니다.
다음은 선택한 요소의 선택 구간에 글자를 굵게 표시합니다.
인라인 편집을 흔히 위지윅이라 부르며, 다음 속성을 사용할 수 있습니다.
속 성 | 설 명 |
---|---|
contenteditable | 선택한 요소를 편집 가능하게 하는 속성 true | false 중 하나 true 이면 요소를 편집 가능하게 함. |
isContentEditable | 선택한 요소의 내용을 편집할 수 있는지의 여부 true | false 중 하나 편집 가능하면 true 를 반환 |
designmode | 문서 전체를 편집 가능하게 하는 속성 on | off 중 하나 on 이면 문서를 편집 가능하게 함. |
execCommand(command, UI, value) | 선택한 요소의 편집 구간에 실행할 명령어를 지정 명령어를 지원하지 않거나 활성화되어 있지 않으면 false 를 반환
|
contenteditable
다음은 <div>요소를 편집 가능하게 합니다.<h3>인라인 편집</h3>
<div contenteditable="true" style="width:200px; height: 200px;
background-color: yellow;border: 1px solid;"></div>
인라인 편집
designmode
designmode 를 이용하면 문서 전체를 편집 모드로 변경할 수 있습니다. 아래는 iframe 을 편집 모드로 변경합니다.<iframe id="editor" style="width:200px; height: 200px;
background: yellow; border: 1px solid;"></iframe>
<script>
var iframe = document.getElementById("editor");
iframe.contentDocument.designMode = "on";
</script>
execCommand
인라인 편집 요소의 편집 구간에 실행할 명령어를 지정할 수 있습니다. 예를 들어 글자를 굵게 한다든지, 색상을 줄 수 있습니다.아래 예제는 iframe 의 선택한 구간에 글자를 굵게 표시합니다.
<button id="user_bold">글자를 굵게</button>
<iframe id="editor" style="width:200px; height: 200px;
background: yellow; border: 1px solid;">
</iframe>
<script>
var iframe = document.getElementById("editor");
iframe.contentDocument.designMode = "on";
var btn = document.getElementById("user_bold");
btn.addEventListener("click", design);
function design(){
iframe.contentDocument.execCommand("bold");
}
</script>
다음은 선택한 요소의 선택 구간에 글자를 굵게 표시합니다.
<button id="user_bold">글자를 굵게</button>
<div id="editor" contenteditable="true" style="width:200px;
height: 200px; background: yellow; border: 1px solid;">
</div>
<script>
var btn = document.getElementById("user_bold");
btn.addEventListener("click", design);
function design(){
document.execCommand("bold");
}
</script>
0 댓글