innerHTML / createElement

국내에 웹 사이트들이 웹 표준을 지키고 OS나 브라우저와 관계 없이 접근성을 향상 시키기 위한 사이트 버그 신고 및 문제 해결을 위한 게시판입니다.
Post Reply
crizin
Posts: 11
Joined: 2005 08 10 12:37 22
Contact:

innerHTML / createElement

Post by crizin »

예전에 어딘가에서 innerHTML을 사용하기보다는 createElement, createTextNode 등을 사용해서 객체를 만들고 자식으로 추가하는 등의 작업을 해주는 쪽이 더 권장된다고 봤었는데요..

결론만 보고 이유를 보지 못해서 갑자기 궁금해졌습니다.

뭔가 작업중인데 innerHTML 한줄이면 될 내용을 create 노가다 하고 있으려니 무슨짓인가 싶더라구요.. 이런 노가다를 웹브라우저에게 떠넘기기 쉽도록 배려한 메소드가 innerHTML이 아닐까 하는 생각이 들어서 말이죠..

innerHTML에 비해 createElement 노가다는 어떤 장점이 있을까요?
eouia

Post by eouia »

장점은... 솔직히 저도 잘 모르겠습니다.
단, DOM 구조의 완결성을 유지하기 위해 innerHTML대신 createElement나 createTextNode를 씁니다. 물론 innerHTML로 불가능한 건 아니겠지만, OOP적인 관점에서 보더라도, Object(Element)를 create하고 add하는 단계가 좀 더 구조적이긴 합니다. innerHTML로 작업하면 비구조적인 스크립트가 될 수 있으니까요. innerHTML은 쉽고 강력한 대신 컨트롤의 주도권을 프로그래머가 제어하기 어렵습니다.
(동적으로 임의의 element들이 생성되었다가 다시 임의의 element를 삭제해야하는 프로세스를 생각해보시면 조금 도움이 될 지도...)
guest

저도 잘은 모르지만.. ^^;

Post by guest »

http://www.w3.org/TR/2004/WD-WCAG20-SCR ... #doc-write

여기 보니까 document.write 또는 innerHTML 은 피하라고 되어 있네요..
User avatar
CN
서포터즈
서포터즈
Posts: 61
Joined: 2005 01 02 01:57 54
Contact:

Re: 저도 잘은 모르지만.. ^^;

Post by CN »

guest wrote:http://www.w3.org/TR/2004/WD-WCAG20-SCR ... #doc-write

여기 보니까 document.write 또는 innerHTML 은 피하라고 되어 있네요..
좋은 내용 감사합니다. 왜 그래야 하는지 이해가 됩니다.
Post Reply

Who is online

Users browsing this forum: Ahrefs [Bot] and 0 guests