- Introduction
- Welcome to JavaScript
- Part 1: Getting Started
- Chapter 1: (Re-)Introducing JavaScript
- What is JavaScript?
- JavaScript’s History
- JavaScript Isn’t…
- How JavaScript Compares To…
- Why JavaScript is a Good Thing
- JavaScript Versions and Browser Support
- JavaScript Programming Goals
- Wrapping Up
- Chapter 2: JavaScript in Action
- Choosing a Doctype
- An HTML5 Primer
- Adding JavaScript to HTML
- Key Development Approaches
- Cobbling Together Some Code
- Steal This JavaScript
- Wrapping Up
- Chapter 3: Tools of the Trade
- The Great Debate: Text Editor or IDE?
- The Browser: Your Friend, Your Enemy
- Testing on Multiple Browsers
- Testing JavaScript
- Errors and Debugging
- Online Resources
- Wrapping Up
- Part 2: JavaScript Fundamentals
- Chapter 4: Simple Variable Types
- Basics of Variables
- Working with Numbers
- Working with Strings
- Performing Type Conversions
- Review and Pursue
- Wrapping Up
- Chapter 5: Using Control Structures
- Basics of Conditionals
- More Conditionals
- More Complex Conditions
- Basics of Loops
- Review and Purse
- Wrapping Up
- Chapter 6: Complex Variable Types
- Generating Dates and Times
- Working with Arrays
- Workings with Objects
- Arrays versus Objects
- Review and Purse
- Wrapping Up
- Chapter 7: Creating Functions
- The Fundamentals
- Functions as Objects
- The Fancier Stuff
- Review and Purse
- Wrapping Up
- Chapter 8: Event Handling
- The Premise of Event Handling
- Creating Event Listeners
- Creating a Utility Library
- Event Types
- Event Accessibility
- Events and Progressive Enhancement
- Advanced Event Handling
- Review and Purse
- Wrapping Up
- Chapter 9: JavaScript and the Browser
- Using Dialog Windows
- Working with the Window
- Manipulating the DOM
- JavaScript and CSS
- Working with Cookies
- Using Timers
- Review and Purse
- Wrapping Up
- Chapter 10: Working with Forms
- General Form Considerations
- Text Inputs and Textareas
- Select Menus
- Checkboxes
- Radio Buttons
- Handling File Uploads
- Regular Expressions
- Putting It All Together
- Review and Purse
- Wrapping Up
- Chapter 11: Ajax
- Ajax Basics
- Working with Other Data
- The Server-Side Script
- Ajax Examples
- Review and Purse
- Wrapping Up
- Chapter 12: Error Management
- Catching and Throwing Errors
- Using Assertions
- Unit Testing
- Review and Purse
- Wrapping Up
- Part 3: Next Steps
- Chapter 13: Frameworks
- Choosing a Framework
- Introducing jQuery
- Introducing YUI
- Libraries
- Review and Purse
- Wrapping Up
- Chapter 14: Advanced JavaScript
- Defining Namespaces
- Creating Custom Objects
- Understanding Prototypes
- Working with Closures
- Alternative Type Identification
- Minifying Code
- Review and Purse
- Wrapping Up
- Chapter 15: PHP and JavaScript Together
- Identifying the Goal
- Creating the Database
- Establishing the Site
- Coding the Non-JavaScript Version
- Creating the Ajax Resources
- Adding the JavaScript
- Completing This Example
- Review and Purse
- Wrapping Up
- Index