Skip to content
Code repository for jQuery Fundamentals training
Find file
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


= Welcome to jQuery Fundamentals! =

Thanks for signing up for the jQuery Fundamentals class! In the interest of getting right to work when we meet, I've put together a few notes about things to do before the class. Your help in doing this housekeeping beforehand is much appreciated. 

== Setting up a Server ==

You'll need a server for the AJAX exercises we'll be doing in class, and you'll need to have it set up before you come to class so we can get right to work. You have a couple of options here:

 * Set up a server on your local machine, using tools such as MAMP or WAMP. If you're not familiar with these tools, they are fairly easy ways to get a server up and running on your computer, allowing you to access and modify all files locally.
 * Set up space on a hosted server, such as Dreamhost, MediaTemple, or similar, and access it via FTP or SSH.

If you have questions about how to do this, please don't hesitate to contact me.

== Getting the Code ==

The code we'll be using in class is hosted in a public repository on Github:

You can download a .zip or .tar file of the code, then uncompress it to use it on your server. (If you're git-inclined, then you can fork the repository instead, if you'd like.)

== Software ==

You'll want to have the following tools to make the most of the class:

 * The Firefox browser
 * The Firebug extension for Firefox
 * A plain text editor
 * For the AJAX portions: An FTP or SSH client (if you're not using a local server)

= Course Outline =

== About the Instructor ==

Rebecca Murphey is a front-end architecture consultant based in Durham, NC. She is a regular contributor to JSMag, the magazine for JavaScript professionals; an active member of the jQuery community; and a contributor to an upcoming jQuery Cookbook from O'Reilly.

== Part 1: JavaScript 101 ==

 * JavaScript vs. jQuery
   * DOM manipulation issues
   * Selection issues
   * Traversal issues
   * Cross-browser issues
 * JavaScript fundamentals
   * Logic and operators
   * Booleans, strings, numbers, arrays, objects, and functions
   * Scope and closures

== Part 2: jQuery Basics ==

 * Selectors
   * best practices
   * optimizations
   * find
   * filter
   * is, not
   * .length
 * Chaining
   * getters vs. setters
 * CSS
   * changing the style of elements
   * changing the style of elements via JS is a bad idea (use classes instead)

== Part 3: Accomplishing things with jQuery ==

 * Traversing
   * next/prev
   * parents, closest, children, siblings
 * Manipulating
   * append, prepend, appendTo, prependTo
   * remove, empty
   * before, after
   * insertBefore, insertAfter
   * attr
   * val
   * creating new elements
 * Events
   * convenience methods (click, mouseover, mouseout, focus, blur, etc.)
   * combination methods (hover, one, toggle)
   * bind and trigger
 * Effects
   * built-in effects
     * show/hide
     * fadeIn/fadeOut
     * slideUp/slideDown
     * toggle
   * custom animations

== Part 4: XHR and other Goodies ==

   * choosing a data type
   * POST vs. GET
   * convenience methods vs $.ajax method
   * load, get, post
   * $.ajax
 * Utility methods
   * trim
   * inArray
   * extend
   * ... and more
 * Plugins
   * Finding
   * Using
   * Writing

= Reference Material =

 * jQuery documentation:
 * jQuery Google Group:
 * Delicious bookmarks:

= Copyright Notice =
Licensed by Rebecca Murphey under the <a href="">Creative Commons Attribution-Share Alike 3.0 United States license</a>. You are free to copy, distribute, transmit, and remix this work, provided you attribute the work to Rebecca Murphey as the original author and reference the GitHub repository for the work at If you alter, transform, or build upon this work, you may distribute the resulting work only under the same, similar or a compatible license. Any of the above conditions can be waived if you get permission from the copyright holder. For any reuse or distribution, you must make clear to others the license terms of this work. The best way to do this is with a link to
Something went wrong with that request. Please try again.