DOM Scripting and Ajax using jQuery

COURSE OUTLINE:

Description For more information please call or contact Motivaim at 1-800-305-3855 or email Customer Service at CustomerService@Motivaimwest.com

Learning Objectives
Learn to be JQuery Savvy, and Introduction into JQuery

  • Make things happen on your page with events
  • Add flair to your actions with animation effects
  • Change your page on command with DOM manipulation
  • Use AJAX to make your site buzzword compliant!
  • Transform drab, static information containers into beautiful, dynamic tables
  • Breathe new life into online forms
  • Create dynamic shufflers, rotators, and galleries

Chapter 1: Getting Started

  • What jQuery does
  • Why jQuery works well
  • Our first jQuery-powered web page
  • Downloading jQuery
  • Setting up jQuery in an HTML document
  • Adding our jQuery code
  • Finding the poem text
  • Injecting the new class
  • Executing the code
  • The finished product
  • Plain JavaScript vs. jQuery
  • Development tools
  • Firebug
  • Summary

Chapter 2: Selecting Elements

  • The Document Object Model
  • The $() function
  • CSS selectors
  • Styling list-item levels
  • Attribute selectors
  • Styling links
  • Custom selectors
  • Styling alternate rows
  • Form selectors
  • DOM traversal methods
  • Styling specific cells
  • Chaining
  • Accessing DOM elements
  • Summary

Chapter 3: Handling Events

  • Performing tasks on page load
  • Timing of code execution
  • Multiple scripts on one page
  • Shortcuts for code brevity
  • Passing an argument to the .ready() callback
  • Simple events
  • A simple style switcher
  • Enabling the other buttons
  • Event handler context
  • Further consolidation
  • Shorthand events
  • Compound events
  • Showing and hiding advanced features
  • Highlighting clickable items
  • The journey of an event
  • Side effects of event bubbling
  • Altering the journey: the event object
  • Event targets
  • Stopping event propagation
  • Default actions
  • Event delegation
  • Methods for event delegation
  • Removing an event handler
  • Event namespacing
  • Rebinding events
  • Simulating user interaction
  • Keyboard events
  • Summary
  • Further reading
  • Exercises

Chapter 4: Styling and Animating

  • Inline CSS modification
  • Basic hide and show
  • Effects and speed
  • Speeding in
  • Fading in and fading out
  • Sliding up and sliding down
  • Compound effects
  • Creating custom animations
  • Building effects by hand
  • Animating multiple properties at once
  • Positioning with CSS
  • Simultaneous versus queued effects
  • Working with a single set of elements
  • Bypassing the queue
  • Manual queueing
  • Working with multiple sets of elements
  • Callbacks
  • In a nutshell
  • Summary
  • Further reading
  • Exercises

Chapter 5: Manipulating the DOM

  • Manipulating attributes
  • Non-class attributes
  • Value callbacks
  • DOM element properties
  • DOM tree manipulation
  • The $() function revisited
  • Creating new elements
  • Inserting new elements
  • Moving elements
  • Wrapping elements
  • Inverted insertion methods
  • Copying elements
  • Cloning for pull quotes
  • Content getter and setter methods
  • Further style adjustments
  • DOM manipulation methods in a nutshell
  • Summary
  • Further reading
  • Exercises

Chapter 6: Sending Data with Ajax

  • Loading data on demand
  • Appending HTML
  • Working with JavaScript objects
  • Retrieving JSON
  • Global jQuery functions
  • Executing a script
  • Loading an XML document
  • Choosing a data format
  • Passing data to the server
  • Performing a GET request
  • Performing a POST request
  • Serializing a form
  • Delivering different content for Ajax requests
  • Keeping an eye on the request
  • Error handling
  • Ajax and events
  • Security limitations
  • Using JSONP for remote data
  • Additional options
  • The low-level Ajax method
  • Modifying default options
  • Loading parts of an HTML page
  • Summary
  • Further reading
  • Exercises

Chapter 7: Using Plugins

  • Finding plugins and help
  • How to use a plugin
  • Downloading and referencing the Cycle plugin
  • Simple plugin use
  • Specifying plugin method parameters
  • Parameter defaults
  • Other types of plugins
  • Custom selectors
  • Global function plugins
  • The jQuery UI plugin library
  • Effects
  • Color animations
  • Class animations
  • Advanced easing
  • Additional effects
  • Interaction components
  • Widgets
  • jQuery UI ThemeRoller
  • Summary
  • Exercises

Chapter 8: Developing Plugins

  • Use of the $ alias in plugins
  • Adding new global functions
  • Adding multiple functions
  • Adding jQuery object methods
  • Object method context
  • Implicit iteration
  • Method chaining
  • Method parameters
  • Parameter maps
  • Default parameter values
  • Callback functions
  • Customizable defaults
  • The jQuery UI widget factory
  • Creating a widget
  • Destroying widgets
  • Enabling and disabling widgets
  • Accepting widget options
  • Adding sub-methods
  • Triggering widget events
  • Plugin design recommendations
  • Plugin distribution
  • Summary
  • Exercises

Chapter 9: Advanced Selectors and Traversing

  • Selecting and traversing revisited
  • Dynamic table filtering
  • Table row striping
  • Combining filtering and striping
  • More selectors and traversal methods
  • Customizing and optimizing selectors
  • Writing a custom selector plugin
  • Selector performance
  • Sizzle selector implementation
  • Testing selector speed
  • DOM traversal under the hood
  • jQuery object properties
  • The DOM element stack
  • Writing a DOM traversal method plugin
  • DOM traversal performance
  • Improving performance using chaining
  • Improving performance using caching
  • Summary
  • Further reading
  • Exercises

Chapter 10: Advanced Events

  • Events revisited
  • Loading additional pages of data
  • Displaying data on hover
  • Event delegation
  • Using jQuery's delegation methods
  • Choosing a delegation method
  • Delegating early
  • Using a context argument
  • Custom events
  • Infinite scrolling
  • Custom event parameters
  • Throttling events
  • Other ways to perform throttling
  • Special events
  • More about special events
  • Summary
  • Further reading
  • Exercises

Chapter 11: Advanced Effects

  • Animation revisited
  • Observing and interrupting animations
  • Determining the animation state
  • Halting a running animation
  • Caution when halting animations
  • Global effect properties
  • Globally disabling all effects
  • Fine-tuning animation smoothness
  • Defining effect durations
  • Multi-property easing
  • Deferred objects
  • Animation promises
  • Summary
  • Further reading
  • Exercises

Chapter 12: Advanced DOM Manipulation

  • Sorting table rows
  • Server-side sorting
  • Ajax sorting
  • JavaScript sorting
  • Moving and inserting elements, revisited
  • Adding links around existing text
  • Sorting simple JavaScript arrays
  • Sorting DOM elements
  • Storing data alongside DOM elements
  • Performing additional precomputation
  • Storing non-string data
  • Alternating sort directions
  • Using HTML5 custom data attributes
  • Sorting and building rows with JSON
  • Modifying the JSON object
  • Rebuilding content on demand
  • Advanced attribute manipulation
  • Shorthand element creation
  • DOM manipulation hooks
  • Writing a CSS hook
  • Summary
  • Further reading
  • Exercises