|
Ever run into things that are more complicated that you orginally expected? Of course, we all do -- all the time. So I shouldn't have been surprised why Javascript/DHTML (dynamic HTML) has gotten more complicated rather less complicated with time. The pure technology has probably gotten better -- but figuring out what's going on seems more difficult.
Last Friday, I sat down to run a demo for handling a simple slideshow from O'Reilly's Javascript Application Cookbook. The demo works in IE 6.0 and Netscape Navigator 4.79 but didn't work at all on Netscape 6.2 or Mozilla 1.1. Hmmm, I wondered -- why would later versions of Netscape fail to handle something that the older versions did? With a bit of digging around, I came across Transitioning from Proprietary DOMs and Markup to W3C Standards: Enhancing Pages That Use LAYER, document.layers[], and document.all to Support Standards:
Greetings! If you've been referred to this page, it's probably because your site has a web page that depends on one of the following proprietary Navigator 4 or Internet Explorer 4/5 features:
| Proprietary Nav4 Features |
Proprietary IE4/5 Features |
| document.layers[], document.elementName, and other Nav4 Layer DOM features |
document.all and other IE4/5 DOM features |
| document.tags, document.ids, document.classes, or document.contextual() for setting CSS properties from Nav4 JavaScript |
document.styleSheets[] for setting CSS properties from Internet Explorer JScript |
| LAYER, ILAYER, and MULTICOL elements |
MARQUEE and BGSOUND elements |
| DIV SRC= transclusions (external content imported into an HTML page using <DIV SRC=...) |
|
| use of .jar files for SmartUpdate |
.cab files |
These features of Navigator 4 and Internet Explorer 4/5 Dynamic HTML were not adopted by the W3C HTML 4.0 or Document Object Model specifications, so they are not supported in new Mozilla-based browsers such as Netscape 6 that are built on W3C standards. [emphasis mine] This page summarizes how to enhance pages that use these proprietary features so that they are fully W3C-compliant and will display on all compliant browsers (such as Netscape 6, Mozilla, Customzilla, etc.) and devices (such as consumer browsing appliances that embed the Gecko layout engine).
I know that this is old news for anyone who has been doing serious DHTML -- but it was a bit of a rude awakening for me. So, for the sake of moving ahead to do the "right thing" (implement the W3C DOM), the writers of Netscape 6+ and Mozilla decided to throw out backwards compatability with Netscape 4.x. I understand why they chose to do that -- but it certainly caught me a bit off-guard. It also leaves me the task of figuring out whether I would have to write DHTML that handles non-Javascript browser, low-end Javascript browsers, NN 4.x, IE and the new W3C DOM compliant browsers!! It seem like a lot of work to do....Anyone have a good experience with the cross-browser DHTML APIs as a way of addressing this problem?
[Later today: David points out the DOM Inspector in Mozilla/Netscape -- thanks. It's good to hear that I'm not the only one who finds Javascript/DHTML to be a complicated mess and wonders about its large-scale usefulness.]
Posted by Raymond Yee on 12/2/02; 11:11:19 AM
from the Web Technology dept.
Discuss
|
|