Mozilla, document.all 부분 지원 시작!

channy의 이미지

7월 24일 부터 나오는 모질라 일일 버전에서는 MSDOM의 기본 메소드인 document.all을 부분 지원합니다. 이는 DHTML 스크립트에 브라우저의 고려 없이 맹목적으로 document.all을 이용한 IE기반 웹사이트를 이용하는데 도움이 될 것입니다. 이 기능은 파이어폭스 1.0 릴리즈에도 적용됩니다.

좀 더 설명하면, 모질라에서 document.all을 무조건적으로 지원한다는 뜻은 아닙니다. 만약 스크립트에 if(document.all)과 같은 검사를 통해서 브라우저를 검사할 경우는 각 브라우저에 맞추어 스크립트를 작성한 것으로 간주하여 document.all를 이용할 수 없게 하며 (더불어 결과로 예전과 마찬가지로 거짓이 반환됩니다), 그렇지 않고 바로 document.all.(id) 등의 MS식 문법을 이용하면 이 때는 IE와 마찬가지로 document.getElementById(id)와 같은 식으로 작동합니다.

이로서 Mozilla는 marquee지원과 더불어 IE와 호환성을 유지하기 위한 중요한 전략적 선택을 하게 되었습니다. 이에 대해 많은 사람들은 표준 DOM을 장려해왔던 Mozilla의 방향에서 후퇴한 것으로 실망하고 있습니다. document.all 지원이 비록 기존의 잘못 작성된 사이트의 이용성은 높아지지만, 동시에 표준을 이용하지 않아도 된다는 인상을 줄 수 있으니까요. 표준 지원을 하도록 개발자를 유도하면서도 사용자의 불편을 줄이는 묘수를 찾기가 쉽지 않은 것 같군요.

한국의 웹사이트의 대표적인 문제인 document.all 사용을 Mozilla가 지원함에 따라 Firefox 1.0에서는 ActiveX를 제외한 대부분의 웹서핑 문제는 해결될 것으로 보입니다.

http://www.mozilla.or.kr/community/view.php?id=archive&no=265

channy의 이미지

channy wrote:
이에 대해 많은 사람들은 표준 DOM을 장려해왔던 Mozilla의 방향에서 후퇴한 것으로 실망하고 있습니다.

저는 이 문제를 하위 호환성 유지라는 관점에서 보고 싶습니다. 모질라에서도 표준은 아니지만 지원이 되고 있는 몇가지 html tag가 있습니다. 하위 호환성 유지때문이죠. 이는 사용자의 편의를 위해서 하는 것인데요. 따라서 저는 document.all의 부분지원을 찬성하는 입장입니다.

표준은 더욱 지켜지지 않을 거라는 우려에 대해서는 DOM표준에서 getElementByID가 가지는 유연성이 높기 때문에 굳이 document.all을 계속 쓸 것인가 하는 문제가 있습니다. 즉, 브라우저가 업그레이드 되면서 documnet.layer가 없어졌듯이 IE6대로 가면서 document.all이 없어질 것이고 재교육된 UI개발자들이 getElementByID를 사용할 것이라는 예상입니다. 우리나라는 속도가 좀 더딜지 모르지만요. 우선 IE6을 빨리 대체할 수 있는 마케팅적인 전략과 표준 준수라는 양면전략으로 돌파해야 되는 시기의 대안이라고 개인적으로 생각합니다.

Channy Yun

Mozilla Korean Project
http://www.mozilla.or.kr

cdpark의 이미지

비표준 tag를 만나면 status bar 등에 경고등 표시를 해 주는게 어떨까요? 그밖에 추후의 표준에서 빠질 가능성이 높은 obsolete feature를 만났을 때도요.

channy의 이미지

cdpark wrote:
비표준 tag를 만나면 status bar 등에 경고등 표시를 해 주는게 어떨까요? 그밖에 추후의 표준에서 빠질 가능성이 높은 obsolete feature를 만났을 때도요.

자바스크립트 콘솔에 다음과 같이 Notice를 줍니다..

상태바에 올리는 건 좀 더 직접적인 방법이 되겠네요 ^^

Channy Yun

Mozilla Korean Project
http://www.mozilla.or.kr

likejazz의 이미지

얼마전에 모질라진에서도 보게되었는데 http://mozillazine.org/talkback.html?article=5063 대단히 환영할만한 소식입니다.

사실상 독점상태인 IE 의 시장점유율을 파고들기위해서는 표준이라는 미명하에 끝까지 고집을 부릴것이 아니라 부분적인 지원은 불가피하다고 생각됩니다.

현명한 선택이었다고 박수를 보내드리고 싶습니다.

--
Sang-Kil Park

offree의 이미지

channy wrote:
cdpark wrote:
비표준 tag를 만나면 status bar 등에 경고등 표시를 해 주는게 어떨까요? 그밖에 추후의 표준에서 빠질 가능성이 높은 obsolete feature를 만났을 때도요.

자바스크립트 콘솔에 다음과 같이 Notice를 줍니다..

상태바에 올리는 건 좀 더 직접적인 방법이 되겠네요 ^^

위 처럼 해주면서 해결방법까지 알려주면 참 좋을 것 같네요.

UI 개발자가 보면 본인사이트가 비표준이라고 나오면 아무래도 바꾸지 않을까 합니다.

표준 검사 extension 같은..

IE 에도 있으면 좋을 듯.. 누가 spy ware 로 표준검사하는 것 만들어 놓고, 비표준 이면 비표준이라고 창이 뜨는 것 만들어 놓으면 참 좋겠네요. ^^

사용자가 바꾸어 나가자!!

= about me =
http://wiki.kldp.org/wiki.php/offree , DeVlog , google talk : offree at gmail.com

랜덤여신의 이미지

저는 document.all 기능을 지원하는 Extension 정도가 나올 거라고 생각했었는데...

음... 아쉽군요... :?

Tenshi의 이미지

channy wrote:
한국의 웹사이트의 대표적인 문제인 document.all 사용을 Mozilla가 지원함에 따라 Firefox 1.0에서는 ActiveX를 제외한 대부분의 웹서핑 문제는 해결될 것으로 보입니다.

더 심각한 게 있습니다.
document.all이며.. document.form이며 모두 생략한 정체불명의 문법.
id든.. form element든.. 하나로 표현해버리는.. (혹자의 말로는 simply the best라나..)
IE에서는 이런 문법을 document.all의 생략형으로 인식하고 처리한다고 하는군요.
제 생각엔 이런 것까지 고려하지 않는 한 적어도 우리나라에서만큼은 "대부분" 까지는 해결될 것 같지 않네요.. :?

cwryu의 이미지

인클루드 wrote:
저는 document.all 기능을 지원하는 Extension 정도가 나올 거라고 생각했었는데...

음... 아쉽군요... :?

예전에 그걸 어떻게 만들 수 있을까 얘기해 본 적이 있는데 그리 만만치 않았습니다. 하려면 앞단에서 미리 document.all을 붙여준다든가 해야 하는데요.. 몇몇 특정 사이트는 정해진 패턴대로 할 수 있겠지만 일반적으로 구현하려면 브라우저의 자바스크립트 부분을 새로 만드는 것과 거의 다름없다는 결론이었습니다.

Risty의 이미지

어느 정도는 예상한 일이지만, 몇몇 사이트를 들어가 본 결과 이번의 document.all 지원으로 페이지 이용이 개선된 곳은 별로 없었습니다. :evil: 상당수가 기능의 전부 또는 거의가 제대로 작동하지 않거나, 이상하게 작동하더군요. 아무래도 정체불명의 문법이 큰 힘을 발휘하는 것 같습니다. -_- 원래부터 제대로 작동하거나 다른 방법으로 기능을 이용할 수 있는 페이지도 생각 외로 많으니, 이번 지원으로 인한 혜택은 생각보다 크지 않을 것 같습니다.

뭐 국내 개발자들이 '더' 타락할 것 같지는 않습니다. 벌써 쓰고 있든가, 처음부터 안 쓰고 있든가 하겠지요. :wink: 다만 개선 요구가 예전보다 덜 먹힐 가능성은 있어 보입니다만.