Practical prototype and part 2: The information in this book is distributed on an "as is" basis, without warranty Although every pre-caution has been taken in the preparation of this work, neither the author(s) nor Apress shall have any liability to any person or entity with respect to any loss or damage caused or alleged to be caused directly or indirectly by the information contained in this work. | CONTENTS vii chapter 4 Ajax Advanced Client Server Ajax Ajax Prototype s Ajax Controlling the Advanced Examples Working with Dynamic Example 1 The Breakfast Example 2 Fantasy CHAPTER 5 State of the Browser Or How We Got Here .91 Pre-DOM Part Pre-DOM Part Events The Crash Using Event stopPropagation Event preventDefault and Event A Further Events and Client-Side Cleaning It Custom The First Custom Broadcasting Listening for chapter 6 Working with the About the DOM Node viii CONTENTS Prototype s DOM Traversing and Creating Putting It chapter 7 Advanced JavaScript Functional Programming and Class-Based Object-Oriented JavaScript Programming with Why OOP .139 Remedial OOP Advanced OOP Using Usage DOM Behavior Functional Functions Can Have Their Own Using Function Using Function delay and Function Using Function chapter 8 Other Helpful Things Useful Methods on Using String String Utility The Template Class and String Using What Does JSON Look Like .180 Why JSON .181 Serializing with Unserializing with String Overriding the Default Using Object Type Sniffing with CONTENTS ix Using Array The reverse and clear The uniq and without PART 2 chapter 9 What You Should Know About DHTML and Introducing the CSS Box Visualizing .