Ajax Design Patterns by Michael Mahemoff The unconfirmed error reports are from readers. They have not yet been approved or disproved by the author or editor and represent solely the opinion of the reader. 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 This page was updated April 16, 2008. UNCONFIRMED errors and comments from readers: Code in section 2.1.3 in Michael Mahemoff's "Ajax Design Patterns" (in Chapter 2) it is not even close to what it should be. http://www.ajaxify.com/tutorial/dynamic/tutorial.js Could you please look in to this? (Chapter one - 1.1. Ajax and the Usable Web) 3rd para footnote; at the expensive of should be at the expense of {22} 4th paragraph / html code; There is no DOCTYPE and there is no closing html element. This is also an issue in downloaded examples. [23] first dynamic example; The first dynamic example, the one with the "Click Here!" link that displays a bunch of property information about the event that triggered the dynamic display, does not work on IE6. (26-27) Dynamic Behavior in a Blink example code; There seems to be some code missing. The example isn't very clear and the code as written on these two pages doesn't run. It seems like some "br" html codes were left out or actually interpreted on the published page as line breaks. {27} code sample at top of page still not correct after reading errata; There is errata for this code, but it doesn't address this. The line: $("sandbox").innerHTML = Clicked at " + new Date() + ". Event: " + ev + "; should be: $("sandbox").innerHTML = "

Clicked at " + new Date() + ". Event: " + ev + ".


"; if you want it to appear like the screenshot in the book. {29} php code ; On my php5 installation I am required to use Positioning is set with standard CSS styles: message.style.left = "150px" should be changed to something like Positioning is set with standard CSS styles: message.style.positioning = "absolute" [90] First code sample; Either the ellipses should be moved to the last line or the function call should be closed with something like , 5000)}; [96] 1st code example; The code snippet is missing a couple lines in the setTimeout() call. [97] Last code example; The code snippet has the wrong content for xhreq.send() {100} 6th paragraph; On page 98/99 it says that the content type header should be "text/xml". Here it says that the content type header should be "text/html". I think this should be clarified. Can it be both or is one statement incorrect? {100} Description of responseXML property; "Content-Type" header for XML response should be "text/xml" and not "text/html". {137} 2nd code snippet; I believe the line: event = event || window.event; should read: event = ev || window.event; Can you confirm this? [145] 3rd paragraph (7-line code snippet); the bold line expiryTimer = setTimeout(expiryTimer, 2000); // 2 secs... should probably read expiryTimer = setTimeout(expire, 2000); // 2 secs... {146} 5th paragraph; A common alternative is to loop with setInterval. should probably be A common alternative is to loop with setTimeout. (As can be seen in the fade example on page 36.) (173) 4th paragraph; The sentence beginning "That's not possible" makes little sense. [285] code example; Now that IE7 supports XMLHttpRequest() directly, it makes no sense to do the "new XMLHttpRequest()" last instead of first. (286) last paragraph; I think you meant this paragraph to be about version-dependent behavior. It would make much more sense if it does. [393] code example; document.getElementById("board") should not be done repeatedly within the loop. The line beginning "the last 4 args" should be a comment. [430] last code example; messageCopy = message.value.replace(/^ */, "") should instead reference messageCopy messageCopy = messageCopy.replace(/^ */, "") {466} code in middle; frame = Math... should be var frame = Math... {559} 4th paragraph; PHP HTTPClient is a framework for PHP, not for Perl