Chapter 1: Putting jQuery in Context
Understanding jQuery UI and jQuery Mobile
What Is the Structure of This Book?
Part 3: Working with Data and Ajax
Where Can I Get the Example Code?
What Software Do I Need for This Book?
Introducing a Basic HTML Document
Understanding the Anatomy of an HTML Element
Understanding the Document Structure
Understanding the Metadata Elements
Understanding the Content Elements
Understanding the Element Hierarchy
Understanding Parent-Child Relationships
Understanding Ancestor-Descendant Relationships
Understanding Sibling Relationships
Understanding the Document Object Model
Defining an External Style Sheet
Selecting Using the Pseudo-element and Pseudo-class Selectors
Unions and the Negation Selectors
Understanding How Styles Cascade
Tweaking the Order with Important Styles
Tie-Breaking with Specificity and Order Assessments
Using Shorthand Properties and Custom Values
Getting Ready to Use JavaScript
Defining Functions with Parameters
Defining Functions That Return Results
The Equality Operator vs. the Identity Operator
Reading and Modifying the Contents of an Array
Enumerating the Contents of an Array
Using the Built-in Array Methods
Comparing undefined and null Values
Checking to See Whether a Variable or Property Is null or undefined
Differentiating Between null and undefined
Understanding the jQuery $ Function
Waiting for the Document Object Model
Using the Alternative Notation
Narrowing the Selection with a Context
Understanding the Selection Result
Modifying Multiple Elements and Chaining Method Calls
Chapter 6: Managing the Element Selection
Reducing the Selection to a Specific Element
Reducing the Selection by Range
Reducing the Selection Based on Descendants
Changing and Then Unwinding the Selection
Navigating Across the Hierarchy
Chapter 7: Manipulating the DOM
Creating Elements Using the $ Function
Creating New Elements by Cloning Existing Elements
Creating Elements Using the DOM API
Inserting Child and Descendant Elements
Inserting the Same Elements in Different Positions
Inserting from a jQuery Object
Inserting Elements Using a Function
Inserting Parent and Ancestor Elements
Wrapping the Content of Elements
Wrapping Elements Using a Function
Inserting Siblings from a jQuery Object
Inserting Siblings Using a Function
Replacing Elements Using a Function
Chapter 8: Manipulating Elements
Working with Attributes and Properties
Setting Attribute Values Dynamically
Adding and Removing Classes Using a Function
Toggling Classes in One Direction
Setting Multiple CSS Properties
Setting Properties Using a Function
Using the Property-Specific CSS Convenience Methods
Setting Element Content Using a Function
Setting Form Element Values Using a Function
Associating Data with Elements
Working with HTML5 Data Attributes
Chapter 9: Working with Events
Registering a Function to Handle Multiple Event Types
Providing Data to the Event Handler Function
Suppressing the Default Action
Removing Event Handler Functions
Limiting DOM Traversal for Live Event Handlers
Manually Invoking Event Handlers
Using the triggerHandler Method
Using the Event Shorthand Methods
Using the Document Event Shorthand Methods
Using the Browser Event Shorthand Methods
Using the Mouse Event Shorthand Methods
Using the Form Event Shorthand Methods
Using the Keyboard Event Shorthand Methods
Chapter 10: Using jQuery Effects
Animating the Visibility of Elements
Using Absolute Target Property Values
Using Relative Target Property Values
Creating and Managing the Effect Queue
Displaying the Items in the Effect Queue
Stopping Effects and Clearing the Queue
Inserting a Delay into the Queue
Inserting Functions into the Queue
Enabling and Disabling Effect Animations
Chapter 11: Refactoring the Example: Part I
Reviewing the Example Document
Adding Additional Flower Products
Dealing with the Submit Button
Implementing the Carousel Event Handler Functions
Totaling the Product Selection
Part 3: Working with Data and Ajax
Chapter 12: Using Data Templates
Understanding the Problem That Templates Solve
Setting Up the jQuery Templates Library
A First Data Templates Example
Using the jQuery $ Function in a Template
Using Nested Templates on Arrays
Controlling Iteration Over Arrays
Iterating Over the Result of an Expression
Manipulating Templates from Event Handler Functions
Changing the Data Used by a Template
Chapter 13: Working with Forms
Recapping the Form Event Methods
Specifying Validation Messages
Formatting the Validation Error Display
Chapter 14: Using Ajax: Part I
Using the Ajax Shorthand Methods
Performing an Ajax GET Request
Performing an Ajax POST Request
Specifying the Expected Data Type
Avoiding the Most Common Ajax Pitfall
Using the Type-Specific Convenience Methods
Chapter 15: Using Ajax: Part II
Making a Simple Ajax Request with the Low-Level API
Understanding the jqXHR Object
Dealing with Successful Requests
Dealing with Completed Requests
Configuring Requests Before They Are Sent
Specifying Multiple Event Handler Functions
Setting the Context for Events
Configuring the Basic Settings for an Ajax Request
Sending JSON Data to the Server
Using More Advanced Configuration Settings
Making the Request Synchronously
Dealing with the Response Status Code
Setting Up and Filtering Ajax Requests
Chapter 16: Refactoring the Example: Part II
Reviewing the Refactored Example
Sourcing the Product Information
Submitting the Form Data Using Ajax
Processing the Server Response
Chapter 17: Setting Up jQuery UI
Creating the jQuery UI Custom Download
Installing jQuery UI for Development
Adding jQuery UI to an HTML Document
Installing jQuery UI for Production
Using jQuery UI via a Content Distribution Network
Chapter 18: Using the Button, Progress Bar, and Slider Widgets
Using jQuery UI Icons in Buttons
Creating Different Types of Button
Using the jQuery UI Progress Bar
Using the Progress Bar Methods
Chapter 19: Using the Autocomplete and Accordion Widgets
Creating the Autocomplete Element
Using the Autocomplete Methods
Chapter 20: Using the Tabs Widget
Configuring the jQuery UI Tabs
Using the Ajax Spinner Message
Using the jQuery UI Tabs Methods
Controlling Remote Tab Ajax Requests
Changing the URL of a Remote Tab
Automatically Cycling Through the Tabs
Using the jQuery UI Tabs Events
Chapter 21: Using the Datepicker Widget
Managing the Appearance of the Datepicker
Getting and Setting the Date Programmatically
Showing and Hiding Pop-up Datepickers Programmatically
Responding to a Month or Year Change
Responding to the Pop-up Closing
Chapter 22: Using the Dialog Widget
Configuring the Basic Dialog Appearance
Setting the Location of the Dialog
Responding to Changing Sizes and Positions
Chapter 23: Using the Drag & Drop Interactions
Creating the Draggable Interaction
Configuring the Draggable Interaction
Using the Droppable Interaction
Dealing with Overlapping Elements
Configuring the Droppable Interaction
Snapping to the Edges of Elements
Chapter 24: Using the Other Interactions
Using the Sortable Interaction
Configuring the Sortable Interaction
Using the Selectable Interaction
Configuring the Selectable Interaction
Using the Selectable Interaction Methods
Using the Selectable Interaction Events
Using the Resizable Interaction
Configuring the Resizable Interaction
Chapter 25: Refactoring the Example: Part III
Reviewing the Refactored Example
Applying the CSS Framework More Widely
Applying Rounded Corners to the Table
Handling the Place Order Button Click
Chapter 26: Getting Started with jQuery Mobile
Understanding the jQuery Mobile Approach
Understanding Automatic Enhancement
Understanding jQuery Mobile Events
Responding to Device Orientation Changes
Avoiding the Two Cardinal Sins of Mobile Development
Avoiding Unrealistic Simulation and Testing
Using a Mobile Browser Emulator
Chapter 27: Pages and Navigation
Understanding jQuery Mobile Pages
Adding Headers and Footers to a Page
Using Scripting to Control jQuery Mobile Pages
Loading Pages in the Background
Handling the Page Initialization Event
Responding to Page Transitions
Chapter 28: Dialogs, Themes, and Layouts
Applying Swatches to Individual Elements
Chapter 29: Buttons and Collapsible Blocks
Understanding Automatically Created Buttons
Configuring jQuery Mobile Buttons
Using Collapsible Content Blocks
Creating a Single Collapsible Block
Configuring jQuery Mobile Collapsible Content Blocks
Using Collapsible Block Events
Controlling Collapsible Blocks Programmatically
Creating jQuery Mobile Accordions
Chapter 30: Using jQuery Mobile Forms
Understanding Automatically Created Form Elements
Specifying Placeholder Elements
Controlling Select Menus Programmatically
Applying a Label to a Check Box
Chapter 31: jQuery Mobile Lists
Using Convention-Based Formatting
Chapter 32: Refactoring the Mobile Example: Part IV
Inserting Products Programmatically
Adding a Button to the Information Page
Implementing the Checkout Process
Chapter 33: Using the jQuery Utility Methods
Queues Revisited: Using General-Purpose Queues
Manually Processing Queue Items
Chapter 34: The jQuery UI Effects & CSS Framework
Using the jQuery UI Animations
Using the jQuery UI CSS Framework
Using the Widget Container Classes
Using the Interaction State Classes
Chapter 35: Using Deferred Objects
A First Deferred Objects Example
Understanding Why Deferred Objects Are Useful
Using Outcome-Indifferent Callbacks
Using the Outcomes of Multiple Deferred Objects
Providing Progress Information
18.189.186.167