Dynamic HTML: The Definitive Guide, 2nd Edition by Danny Goodman This errata page lists errors outstanding in the most recent printing. If you have technical questions or error reports, you can send them to booktech@oreilly.com. Please specify the printing date of your copy. This page was updated March 14, 2006. Here's a key to the markup: [page-number]: serious technical mistake {page-number}: minor technical mistake : important language/formatting problem (page-number): language change or minor formatting problem ?page-number?: reader question or request for clarification Confirmed errors: (84) typo in Table 4-3. postRight should be posRight {85} getPropertyValue() requires background-color instead of backgroundColor. This is stated in the reference section, but it should be mentioned here as well. {89-90} seekLayer function. If this function finds a match in the recursion, it doesn't stop. This is extra work. To fix, add "if (theObj) break" right after the recursion call. Also, I would think that the depth first search it does is also extra work. It would be better to look at all the objects at the current level before trying to recurse. AUTHOR'S REPLY: I agree that adding the statement "if (theObj) break" below the first code line on p.90 would avoid extraneous processing. [167] final paragraph; First sentence says "Set the cancelBubble property to false..." This should read "Set the cancelBubble property to true..." because the previous paragraph states that "false" is the default value. Also, the example (continued at the top of p168) sets the property to "true". (203) Very near the bottom seems to say that Onmouseout is available on all or most targets in Version 4 browsers, but it doesn't mention Onmouseover, which seems non-symmetric. I suspect you meant 'onmouseup' instead. In either case NN4.8 on Linux doesn't fit. I can get an Onmousemove anywhere on the Window object but only over for layers objects. (I didn't try document) AUTHOR'S REPLY: Yes, in the fourth line from the bottom, the word onmouseout should be Onmouseup. Assigning onmousemove to the document object works (as demonstrated in my element dragging code example). {281} Autocomplete; The default value for autocomplete should be "none (set by user)". The autocomplete attribute is somehow missing from the tag discussion starting on p.327. I see that the autocomplete property is also missing from the 'form' and 'input type="password"' and 'input type="text"' discussions starting on pp. 683, 744, and 759, respectively. (306) "Element-Specific Attributes" section and between "align" and "datafld" sections; The "allowtransparency" attribute of the "iframe" element is missing from the list of "Element-specific Attributes", and more significantly the section to describe the attribute is also missing. AUTHOR: The reader is correct about this inadvertent omission. There should be a section before the 'datafld' section as follows: allowtransparency NN n/a IE 5.5 HTML n/a --------------------------------------------------------------------------- allowtransparency="featureSwitch" Controls whether the background plane of the iframe element is transparent or opaque. To allow the main document to show through the iframe, set the allowtransparency attribute to true and either leave the iframe's background-color style attribute at its default setting (transparent) or set it explicitly to transparent. Note that this transparency affects the iframe element, independent of any document loaded into the iframe. Therefore, if you want a background style to affect only the iframe, you must set the allowtransparency attribute of the iframe to true and set the background of the element that appears behind any document loaded into the iframe (provided the document's background is transparent). An allowtransparency attribute setting of false (the default) does not allow background styles associated with the iframe element to be visible (but background styles in the iframe's nested document will be visible). Example Value Boolean string value: true | false Default false Object Model Reference [window.]document.getElementById(elementID).allowTransparency [363] Your book Dynamic HTML The Definitive Reference 2nd Edition says it covers up to Netscape 7.0/Mozilla 1.0. The tag is recognized by NN 7, but the book says it is not on page 363. This was actually why I bought the book. NN 7 recognizes marquees, but I was trying to tweak one of the attributes to make it work a specific way. Oddly enough, Mozilla 1.1 does not recognize marquees. AUTHOR: For the most part, this reader is correct. Support for the marquee element is included in Netscape 7.0, but it was added to the Mozilla branch for Mozilla 1.0.1 (from which the final Netscape 7.0 was built). This occurred after DHTMLTDR2 went to bed. But there is more to this (sordid) story. The implementation in Mozilla (at least through 1.2) is incomplete (compared to the proprietary Microsoft implementation) and rather buggy. It is implemented not as a separate element, but as a div element associated with an internal style sheet definition that governs the behavior of the element (via Mozilla's XBL mechanism for customizing the engine). The following element attributes are recognized in NN7/Moz: direction scrollamount scrolldelay width (but not height) Corresponding DOM properties (direction, scrollAmount, scrollDelay, and width) are also supported (along with a handful of other proprietary ones), but are read-only in NN7/Moz. Two methods (start(), stop()) are also supported in NN7/Moz (pp.788-793). Contrary to the reader's observation, the marquee element is available in Mozilla 1.0.1, 1.1, and 1.2 (among the final release versions). The engineering/marketing/aesthetic debate surrounding the inclusion of this non-W3C DOM, MS-proprietary element in Mozilla was one of the most heated I had seen during Mozilla's development. The argument was settled (not to everyone's satisfaction) in August 2002. {410} 1st paragraph; the multiple attribute of the