SlideShare a Scribd company logo
Beginning
Introduction Ralph Whitbeck Senior Web Application Engineer  BrandLogic Corporation http://brandlogic.com Blog: http://ralphwhitbeck.com Twitter: RedWolves
Introduction Tip Jar is  open     Tips can be sent via paypal [email_address] *Speaker Note* Pause so audience can write down address
Setting Expectations This begins the first part of a three part beginners track
Setting Expectations This begins the first part of a three part beginners track Beginning jQuery 
Setting Expectations This begins the first part of a three part beginners track Beginning jQuery Extending jQuery - Understanding plugins
Setting Expectations This begins the first part of a three part beginners track Beginning jQuery Extending jQuery - Understanding plugins Beginning jQuery UI
Setting Expectations
Setting Expectations This talk is for those just starting out with jQuery
Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history
Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history Meet the core team
Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history Meet the core team How jQuery works
Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history Meet the core team How jQuery works  Get jQuery on your page
Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history Meet the core team How jQuery works  Get jQuery on your page Walk through a real-world examples
What is jQuery?
What is jQuery?  jQuery is JavaScript
What is jQuery?  With JavaScript show a hidden element   if (browserType == "gecko" )  document.poppedLayer =  eval('document.getElementById(”HiddenDIV")');  else if (browserType == "ie")  document.poppedLayer =  eval('document.getElementById(”HiddenDIV")');  else  document.poppedLayer =  eval('document.layers[”HiddenDIV"]');  document.poppedLayer.style.visibility = "visible";
What is jQuery?  Show a hidden div using jQuery   $(“#HiddenDIV”).show();
 
 
What is jQuery?  jQuery is JavaScript  It's a light-weight library (19kb minified and GZIPed)
What is jQuery?  jQuery is JavaScript  It's a light-weight library (19kb minified and GZIPed) Easy and fast HTML DOM Selection
What is jQuery?  jQuery is JavaScript  It's a light-weight library (19kb minified and GZIPed) Easy and fast HTML DOM Selection Built to work on all "modern" browsers  (IE6+, FF 2.0+, Safari 3.0+, Opera 9+, Chrome 1.0+) 
What is jQuery?  jQuery is JavaScript  It's a light-weight library (19kb minified and GZIPed) Easy and fast HTML DOM Selection Built to work on all modern browsers  (IE6+, FF 2.0+, Safari 3.0+, Opera 9+, Chrome 1.0+)    It's Open Source
What can jQuery Produce? High school students from Spotswood High School Jamie Gilar John Cicolella Demo’d  http:// www.jamie.strunex.net /homework/channel/
Benefits to jQuery
Benefits to jQuery Well documented (http://docs.jquery.com)
Benefits to jQuery Well documented (http://docs.jquery.com) Thriving community of developers Blogs   Twitter Online Tutorials  Books Conferences Classes
Benefits to jQuery jQuery is Extensible Create/release your own plugins Thousands of plugins available
Benefits to jQuery jQuery is Extensible Create/release your own plugins Thousands of plugins available  jQuery works with other libraries Prototype Mootools
Who is using jQuery? Google  Amazon    IBM Microsoft   Netflix Twitter Dell, Inc. NBC  EA  Match  MLB ESPN Best Buy
jQuery's History jQuery was released:            January 14, 2006         BarCampNYC  
jQuery's History Versions     1.0 - August 26, 2006
jQuery's History Versions     1.0 - August 26, 2006   1.1 - January 14, 2007
jQuery's History Versions     1.0 - August 26, 2006   1.1 - January 14, 2007   1.1.3 - July 5, 2007
jQuery's History Versions     1.2 - September 10, 2007
jQuery's History Versions     1.2 - September 10, 2007  jQuery UI released - September 16, 2007
jQuery's History Versions     1.2 - September 10, 2007  jQuery UI released - September 16, 2007 1.2.6 - May 24, 2008
jQuery's History Versions     Web site redesign - August 28, 2008
jQuery's History
jQuery's History Versions     Web site redesign - August 28, 2008   1.3 - January 14, 2009
jQuery's History Versions     Web site redesign - August 28, 2008   1.3 - January 14, 2009    1.3.2 - February 20, 2009
jQuery's Core Team
jQuery's Core Team   Development     John Resig   Brandon Aaron   Ariel Flesler    Jörn Zaefferer
jQuery's Core Team   Evangelism     Rey Bango   Karl Swedberg   Cody Lindley
jQuery's Core Team   jQuery UI      Paul Bakaus   Richard D. Worth   Scott González    Todd Parker   Many others
jQuery's Core Team Plugins      Yehuda Katz   Klaus Hartl   Mike Alsup 
jQuery's Core Team Web, Design and Infrastructure      Scott Jehl   Mike Hostetler   Jonathan Sharp
Setting up jQuery  
Setting up jQuery Include jQuery on the page  
Setting up jQuery Include jQuery on the page   Download latest from jQuery.com <script src=&quot;jquery-1.3.2.min.js&quot; type=&quot;text/javascript&quot;></script>
Setting up jQuery Include jQuery on the page   Download latest from jQuery.com <script src=&quot;jquery-1.3.2.min.js&quot; type=&quot;text/javascript></script> Include the latest from Google AJAX Libraries API <script src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js&quot; type=&quot;text/javascript&quot;></script>
Setting up jQuery Set jQuery to run when the DOM is loaded.        $(document).ready(function(){          //put your jQuery code here.      });
How jQuery Works     $(&quot;div&quot;).show();
How jQuery Works $ Initiate the jQuery Object
How jQuery Works     jQuery(&quot;div&quot;).show();
How jQuery Works   (&quot;div&quot;) Select Elements
How jQuery Works   $(&quot;div&quot;) $(&quot;div#intro h2&quot;) $(&quot;div.section > p&quot;) $(&quot;a[href='http://www.jquery.com']&quot;) $(&quot;ul#nav li:first&quot;)
How jQuery Works   .show() Do Something
How jQuery Works   Demo (Demo based on:  http://ejohn.org/apps/learn-jquery/ )
How jQuery is Structured Core   Selectors Attributes Traversing Manipulation CSS Events AJAX Effects
jQuery Core .each() .length() .eq() .get() .index() .data() .removeData() ...and many more!
Selectors      #id      element     .class      :first      :last      :not(selector)      [attribute=value]      ...and many more!
Attributes      .removeAttr()        .addClass()      .hasClass()        .removeClass()        .toggleClass()            .html()           .val()  ...and many more!
Traversing      .not()        .add()        .children()      .context()      .next()      .prevAll()      .siblings()  ...and many more!
Manipulation      .append()        .after()      .insertAfter()      .wrap()      .replaceWith()      .empty()  ...and many more!
CSS      .width()        .innerHeight()      .height()      .outerHeight()      .offset()      .position()      .css()  ...and many more!
Events      .ready()        .mouseout()      .trigger()      .hover()      .toggle()      .blur()      .live()  ...and many more!
AJAX      .ajax()        .load()      .getJSON()      .getScript()      .serialize      .get()      .post() ...and many more!
Effects      .hide()          .show()      .fadeTo()      .slideToggle()      .toggle()      .slideUp()      .slideDown()  ...and many more!
Putting it all together Real-World  Demo  (Demo based on:  http://ralphwhitbeck.com/2007/11/20/PullingTwitterUpdatesWithJSONAndJQuery.aspx )
Thank You Speaker rate http://speakerrate.com/talks/1400-beginning-jquery
Thank You Speaker rate http://speakerrate.com/talks/1400-beginning-jquery

More Related Content

PDF
jQuery UI and Plugins
PDF
Jquery tutorial
PDF
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
PDF
HTML5 Essentials
PPTX
Maintainable JavaScript 2012
PDF
Game Development Using HTML 5
KEY
jQuery Anti-Patterns for Performance & Compression
PDF
Building mobile applications with DrupalGap
jQuery UI and Plugins
Jquery tutorial
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
HTML5 Essentials
Maintainable JavaScript 2012
Game Development Using HTML 5
jQuery Anti-Patterns for Performance & Compression
Building mobile applications with DrupalGap

What's hot (20)

PDF
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
PDF
Create responsive websites with Django, REST and AngularJS
KEY
HTML 5 & CSS 3
PDF
Seven deadly theming sins
PPTX
iPhone Web Applications: HTML5, CSS3 & dev tips for iPhone development
PDF
Real World Web components
PPTX
JavaScript Advanced - Useful methods to power up your code
PDF
What you need to know bout html5
PPTX
jQuery PPT
ODP
Drupal Best Practices
KEY
An in-depth look at jQuery UI
PDF
Using HTML5 sensibly
PDF
HTML5 and the web of tomorrow!
PDF
Multimedia on the web - HTML5 video and audio
PDF
Taiwan Web Standards Talk 2011
PDF
HTML5: where flash isn't needed anymore
PDF
Keypoints html5
PPTX
WordPress theme development from scratch : ICT MeetUp 2013 Nepal
PPTX
PDF
Web Development for UX Designers
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Create responsive websites with Django, REST and AngularJS
HTML 5 & CSS 3
Seven deadly theming sins
iPhone Web Applications: HTML5, CSS3 & dev tips for iPhone development
Real World Web components
JavaScript Advanced - Useful methods to power up your code
What you need to know bout html5
jQuery PPT
Drupal Best Practices
An in-depth look at jQuery UI
Using HTML5 sensibly
HTML5 and the web of tomorrow!
Multimedia on the web - HTML5 video and audio
Taiwan Web Standards Talk 2011
HTML5: where flash isn't needed anymore
Keypoints html5
WordPress theme development from scratch : ICT MeetUp 2013 Nepal
Web Development for UX Designers
Ad

Viewers also liked (20)

PDF
jQuery for beginners
PDF
Learning jQuery in 30 minutes
PDF
jQuery Essentials
PPTX
Beginning jQuery
PDF
jQuery Tutorial
PPTX
jQuery Tutorial - By Bally Chohan
PDF
Laravel tips
PPT
Oops in PHP By Nyros Developer
DOCX
Hari Resume
PPT
Inner core of Ajax
PPT
Careers In Java Script Ajax - Java Script Ajax Tutorials & Programs by Learni...
KEY
Action Controller Overview, Season 1
PDF
Let's Learn Ruby - Basic
PDF
Beginning Jquery In Drupal Theming
PDF
Fundamental JQuery
PPTX
Rekayasa web part 3 khaerul anwar
PDF
Selenium Clinic Eurostar 2012 WebDriver Tutorial
PPTX
Introduction to JSON & AJAX
jQuery for beginners
Learning jQuery in 30 minutes
jQuery Essentials
Beginning jQuery
jQuery Tutorial
jQuery Tutorial - By Bally Chohan
Laravel tips
Oops in PHP By Nyros Developer
Hari Resume
Inner core of Ajax
Careers In Java Script Ajax - Java Script Ajax Tutorials & Programs by Learni...
Action Controller Overview, Season 1
Let's Learn Ruby - Basic
Beginning Jquery In Drupal Theming
Fundamental JQuery
Rekayasa web part 3 khaerul anwar
Selenium Clinic Eurostar 2012 WebDriver Tutorial
Introduction to JSON & AJAX
Ad

Similar to jQuery For Beginners - jQuery Conference 2009 (20)

PPT
Jqueryforbeginnersjqueryconference2009 090914063709 Phpapp02
PPT
J query presentation
PPT
J query presentation
PPTX
Getting Started with jQuery
PPTX
Getting started with jQuery
PPT
jQuery Introduction/ jquery basic concept
PPTX
Upstate CSCI 450 jQuery
PDF
Jquery tutorial-beginners
PPT
JQuery introduction
PPT
Jquery PPT_Finalfgfgdfgdr5tryeujkhdwappt
PPTX
Jquery Complete Presentation along with Javascript Basics
PPTX
A to Z about JQuery - Become Newbie to Expert Java Developer
PPTX
J Query The Write Less Do More Javascript Library
PPTX
JQuery_and_Ajax.pptx
PDF
Write Less Do More
KEY
Everything You Need to Know in Order to Start Using jQuery
PDF
jQuery (DrupalCamp Toronto)
PPTX
Web technologies-course 11.pptx
PDF
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
Jqueryforbeginnersjqueryconference2009 090914063709 Phpapp02
J query presentation
J query presentation
Getting Started with jQuery
Getting started with jQuery
jQuery Introduction/ jquery basic concept
Upstate CSCI 450 jQuery
Jquery tutorial-beginners
JQuery introduction
Jquery PPT_Finalfgfgdfgdr5tryeujkhdwappt
Jquery Complete Presentation along with Javascript Basics
A to Z about JQuery - Become Newbie to Expert Java Developer
J Query The Write Less Do More Javascript Library
JQuery_and_Ajax.pptx
Write Less Do More
Everything You Need to Know in Order to Start Using jQuery
jQuery (DrupalCamp Toronto)
Web technologies-course 11.pptx
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)

Recently uploaded (20)

PPTX
Programs and apps: productivity, graphics, security and other tools
PPTX
Group 1 Presentation -Planning and Decision Making .pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Machine Learning_overview_presentation.pptx
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
MYSQL Presentation for SQL database connectivity
PPTX
A Presentation on Artificial Intelligence
PDF
The Rise and Fall of 3GPP – Time for a Sabbatical?
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
PDF
cuic standard and advanced reporting.pdf
PDF
NewMind AI Weekly Chronicles - August'25-Week II
PDF
Unlocking AI with Model Context Protocol (MCP)
PPTX
Big Data Technologies - Introduction.pptx
PPTX
1. Introduction to Computer Programming.pptx
PPTX
Tartificialntelligence_presentation.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
Programs and apps: productivity, graphics, security and other tools
Group 1 Presentation -Planning and Decision Making .pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Machine Learning_overview_presentation.pptx
Diabetes mellitus diagnosis method based random forest with bat algorithm
MYSQL Presentation for SQL database connectivity
A Presentation on Artificial Intelligence
The Rise and Fall of 3GPP – Time for a Sabbatical?
Assigned Numbers - 2025 - Bluetooth® Document
Spectral efficient network and resource selection model in 5G networks
Encapsulation_ Review paper, used for researhc scholars
Advanced methodologies resolving dimensionality complications for autism neur...
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
cuic standard and advanced reporting.pdf
NewMind AI Weekly Chronicles - August'25-Week II
Unlocking AI with Model Context Protocol (MCP)
Big Data Technologies - Introduction.pptx
1. Introduction to Computer Programming.pptx
Tartificialntelligence_presentation.pptx
Digital-Transformation-Roadmap-for-Companies.pptx

jQuery For Beginners - jQuery Conference 2009

  • 2. Introduction Ralph Whitbeck Senior Web Application Engineer  BrandLogic Corporation http://brandlogic.com Blog: http://ralphwhitbeck.com Twitter: RedWolves
  • 3. Introduction Tip Jar is open   Tips can be sent via paypal [email_address] *Speaker Note* Pause so audience can write down address
  • 4. Setting Expectations This begins the first part of a three part beginners track
  • 5. Setting Expectations This begins the first part of a three part beginners track Beginning jQuery 
  • 6. Setting Expectations This begins the first part of a three part beginners track Beginning jQuery Extending jQuery - Understanding plugins
  • 7. Setting Expectations This begins the first part of a three part beginners track Beginning jQuery Extending jQuery - Understanding plugins Beginning jQuery UI
  • 9. Setting Expectations This talk is for those just starting out with jQuery
  • 10. Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history
  • 11. Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history Meet the core team
  • 12. Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history Meet the core team How jQuery works
  • 13. Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history Meet the core team How jQuery works Get jQuery on your page
  • 14. Setting Expectations This talk is for those just starting out with jQuery We'll explore jQuery's history Meet the core team How jQuery works Get jQuery on your page Walk through a real-world examples
  • 16. What is jQuery? jQuery is JavaScript
  • 17. What is jQuery? With JavaScript show a hidden element   if (browserType == &quot;gecko&quot; ) document.poppedLayer = eval('document.getElementById(”HiddenDIV&quot;)'); else if (browserType == &quot;ie&quot;) document.poppedLayer = eval('document.getElementById(”HiddenDIV&quot;)'); else document.poppedLayer = eval('document.layers[”HiddenDIV&quot;]'); document.poppedLayer.style.visibility = &quot;visible&quot;;
  • 18. What is jQuery? Show a hidden div using jQuery   $(“#HiddenDIV”).show();
  • 19.  
  • 20.  
  • 21. What is jQuery? jQuery is JavaScript It's a light-weight library (19kb minified and GZIPed)
  • 22. What is jQuery? jQuery is JavaScript It's a light-weight library (19kb minified and GZIPed) Easy and fast HTML DOM Selection
  • 23. What is jQuery? jQuery is JavaScript It's a light-weight library (19kb minified and GZIPed) Easy and fast HTML DOM Selection Built to work on all &quot;modern&quot; browsers (IE6+, FF 2.0+, Safari 3.0+, Opera 9+, Chrome 1.0+) 
  • 24. What is jQuery? jQuery is JavaScript It's a light-weight library (19kb minified and GZIPed) Easy and fast HTML DOM Selection Built to work on all modern browsers (IE6+, FF 2.0+, Safari 3.0+, Opera 9+, Chrome 1.0+)   It's Open Source
  • 25. What can jQuery Produce? High school students from Spotswood High School Jamie Gilar John Cicolella Demo’d http:// www.jamie.strunex.net /homework/channel/
  • 27. Benefits to jQuery Well documented (http://docs.jquery.com)
  • 28. Benefits to jQuery Well documented (http://docs.jquery.com) Thriving community of developers Blogs  Twitter Online Tutorials Books Conferences Classes
  • 29. Benefits to jQuery jQuery is Extensible Create/release your own plugins Thousands of plugins available
  • 30. Benefits to jQuery jQuery is Extensible Create/release your own plugins Thousands of plugins available jQuery works with other libraries Prototype Mootools
  • 31. Who is using jQuery? Google Amazon   IBM Microsoft  Netflix Twitter Dell, Inc. NBC EA Match MLB ESPN Best Buy
  • 32. jQuery's History jQuery was released:            January 14, 2006         BarCampNYC  
  • 33. jQuery's History Versions     1.0 - August 26, 2006
  • 34. jQuery's History Versions     1.0 - August 26, 2006   1.1 - January 14, 2007
  • 35. jQuery's History Versions     1.0 - August 26, 2006   1.1 - January 14, 2007   1.1.3 - July 5, 2007
  • 36. jQuery's History Versions     1.2 - September 10, 2007
  • 37. jQuery's History Versions     1.2 - September 10, 2007 jQuery UI released - September 16, 2007
  • 38. jQuery's History Versions     1.2 - September 10, 2007 jQuery UI released - September 16, 2007 1.2.6 - May 24, 2008
  • 39. jQuery's History Versions     Web site redesign - August 28, 2008
  • 41. jQuery's History Versions     Web site redesign - August 28, 2008   1.3 - January 14, 2009
  • 42. jQuery's History Versions     Web site redesign - August 28, 2008   1.3 - January 14, 2009   1.3.2 - February 20, 2009
  • 44. jQuery's Core Team   Development     John Resig   Brandon Aaron   Ariel Flesler   Jörn Zaefferer
  • 45. jQuery's Core Team   Evangelism     Rey Bango   Karl Swedberg   Cody Lindley
  • 46. jQuery's Core Team   jQuery UI     Paul Bakaus   Richard D. Worth   Scott González   Todd Parker   Many others
  • 47. jQuery's Core Team Plugins     Yehuda Katz   Klaus Hartl   Mike Alsup 
  • 48. jQuery's Core Team Web, Design and Infrastructure     Scott Jehl   Mike Hostetler   Jonathan Sharp
  • 50. Setting up jQuery Include jQuery on the page  
  • 51. Setting up jQuery Include jQuery on the page   Download latest from jQuery.com <script src=&quot;jquery-1.3.2.min.js&quot; type=&quot;text/javascript&quot;></script>
  • 52. Setting up jQuery Include jQuery on the page   Download latest from jQuery.com <script src=&quot;jquery-1.3.2.min.js&quot; type=&quot;text/javascript></script> Include the latest from Google AJAX Libraries API <script src=&quot;http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js&quot; type=&quot;text/javascript&quot;></script>
  • 53. Setting up jQuery Set jQuery to run when the DOM is loaded.       $(document).ready(function(){         //put your jQuery code here.     });
  • 54. How jQuery Works     $(&quot;div&quot;).show();
  • 55. How jQuery Works $ Initiate the jQuery Object
  • 56. How jQuery Works     jQuery(&quot;div&quot;).show();
  • 57. How jQuery Works   (&quot;div&quot;) Select Elements
  • 58. How jQuery Works   $(&quot;div&quot;) $(&quot;div#intro h2&quot;) $(&quot;div.section > p&quot;) $(&quot;a[href='http://www.jquery.com']&quot;) $(&quot;ul#nav li:first&quot;)
  • 59. How jQuery Works   .show() Do Something
  • 60. How jQuery Works   Demo (Demo based on: http://ejohn.org/apps/learn-jquery/ )
  • 61. How jQuery is Structured Core  Selectors Attributes Traversing Manipulation CSS Events AJAX Effects
  • 62. jQuery Core .each() .length() .eq() .get() .index() .data() .removeData() ...and many more!
  • 63. Selectors     #id     element     .class     :first     :last     :not(selector)     [attribute=value]      ...and many more!
  • 64. Attributes     .removeAttr()       .addClass()     .hasClass()       .removeClass()       .toggleClass()           .html()           .val() ...and many more!
  • 65. Traversing     .not()       .add()       .children()     .context()     .next()     .prevAll()     .siblings() ...and many more!
  • 66. Manipulation     .append()       .after()     .insertAfter()     .wrap()     .replaceWith()     .empty() ...and many more!
  • 67. CSS     .width()       .innerHeight()     .height()     .outerHeight()     .offset()     .position()     .css() ...and many more!
  • 68. Events     .ready()       .mouseout()     .trigger()     .hover()     .toggle()     .blur()     .live() ...and many more!
  • 69. AJAX     .ajax()       .load()     .getJSON()     .getScript()     .serialize     .get()     .post() ...and many more!
  • 70. Effects     .hide()         .show()     .fadeTo()     .slideToggle()     .toggle()     .slideUp()     .slideDown() ...and many more!
  • 71. Putting it all together Real-World Demo (Demo based on: http://ralphwhitbeck.com/2007/11/20/PullingTwitterUpdatesWithJSONAndJQuery.aspx )
  • 72. Thank You Speaker rate http://speakerrate.com/talks/1400-beginning-jquery
  • 73. Thank You Speaker rate http://speakerrate.com/talks/1400-beginning-jquery

Editor's Notes

  • #2: START TIMER!!! I’d like to welcome you to jQuery Conference 2009. This is Beginning jQuery !!!REMEMBER SLOW DOWN!!!! BREATHE!!!!
  • #3: My name is Ralph Whitbeck I am a senior web application engineer for BrandLogic Corporation which specialized in branding, design and interactive applications where we use jQuery to create rich user interfaces for our clients. You can read my blog at ralphwhitbeck.com where I write about jQuery, ASP.NET and other various web development topics that are interesting to me. And finally you can follow me on Twitter with my screen name RedWolves
  • #4: Please note that the tip jar is currently open.
  • #5: The first three talks in the Io room will be beginner focused and will help you get up to speed quickly.
  • #6: The first talk is Beginning jQuery and I’ll go over what we’ll cover in this talk in a minute.
  • #7: At some point jQuery core methods will not be enough to make the desired rich user interfaces and functionality that is needed. That’s when it becomes necessary to turn to jQuery plugins or extend jQuery yourself. Cody Lindley will explore plugins and their usefulness and how to extend jQuery by walking us through making your own plugin.
  • #8: In the third talk Richard D. Worth with walk us through jQuery UI. jQueryUI is a suite of official jQuery plugins that can be used to build rich internet applications You will learn about the major components in each jQuery UI area     -Interactions     -Widgets     -Theming     -Effects
  • #9: So let’s set some expectations of this talk
  • #10: You should be here if you are new to jQuery and want to learn more about jQuery and how to use it. Beginners and those just starting out is the intended audience.
  • #11: We&apos;ll quickly walk through the progression of jQuery from start to it’s current release.     Because it&apos;s important to understand the path of how we got here. Plus I’ll throw a couple of interesting tid bits of fun facts at you as well.
  • #12: I’ll show you how the core jQuery team is structured tell you how each smaller team helps to develop, promote and support jQuery and the community and I’ll Introduce you to the individual team members
  • #13: We&apos;ll break a line of jQuery down to see why it’s structured the way it is we’ll also see how to use jQuery and how it&apos;s simplistic focus works to make client side development easy by looking at examples of jquery in action.
  • #14: We’ll explore what you need to do to get jQuery in your web page so you can start to write less and do more with your javascript.
  • #15: Finally, from scratch we’ll roll up our sleeves and get our hands dirty and write some code. We’ll write a few lines of code and display some of my tweets from twitter in a web page using jQuery and the Twitter API.
  • #16: So What is jQuery?
  • #17: jQuery is valid JavaScript because jQuery is built with JavaScript.    jQuery makes writing JavaScript Easier.
  • #18: To make an element visible that is set to display: none with css using straight JavaScript would take at least these number of lines. Take note of the browser sniffing. For each browser we need to get at the element using different methods. So we have tests for the various browser types then we load the DOM element into a object which we can then set the css style visibility to visible and the element with then show. What we aren’t seeing in this example is the block that is setting the value of browserType which is done using feature detection and user agent sniffing. Which you must do manually. So you can test if document.all is true which means it’s functionality is available and we know that document.all is ie specific. We then set BrowserType to IE. That has to be setup on every manually and browser tested everytime we are going to access the DOM. jQuery gives us a better way.
  • #19: With jQuery we initialize the jQuery object which provides us with all the cross browser capabilities built in. We then select our DOM elements and we then perform an action against it. So in this example in one line of code we can do the same thing as the dozen or so lines of code but we do not need to worry about how to reference the DOM in IE or Firefox or Opera or Safari because jQuery is handling all the cross-browser quirks for us.   In case I didn’t get across that jQuery allows you to do more with less let me try to illustrate this point visually. Let&apos;s pretend for a minute we were going to use JavaScript and jQuery to make Star Wars.  jQuery can&apos;t make Star Wars...yet, but if it could, lets see what would happen. This’ll be fun. Now lets say as a developer we were to use straight JavaScript with no library support; after a few months and a couple of thousands of lines of code most developers would come up with something like this...
  • #20: it&apos;s distguishable as Star Wars to most but it&apos;s not very professional or I would say &amp;quot;polished&amp;quot;. There are so many problems with this you wouldn’t even know where to begin. Seriously, what is the garbage kid? Giedo or a really bad Jabba the Hutt?   Needless to say Most would say it&apos;s not cross-platform.  For instance this wouldn&apos;t work on TV or on the Big Screen.     It&apos;s probably safe to say this version of Star Wars would not of been awarded or nominated for an Academy Award in 1977. It really works on the internet…maybe. Now if you used jQuery to make Star Wars, after a couple of weeks of development and a few hundred lines of code you&apos;d get this...
  • #21: Now this is the star wars we’ve come to know and love. This is cross-platform as it works on all platforms, TV, Movies, as a poster in my bedroom in 1983. We are able to select HTML DOM elements from DOMa the hutt and we can chain actions and events together to get Bikini Princess Leia. Plus it took a lot less work. Yeah it&apos;s a stretch but you get the idea.
  • #22: So back to what is jQuery?   So with all this cross-browser support you might think that a library that makes writing JavaScript easier would be huge. But It has a relatively small foot print. At 19K it’s smaller then most of the graphics you may also be loading onto the page. when you download the production version which is minified and GZIPed for maximum efficiency the total file size is 19KB We&apos;ll learn how we can utilize Google&apos;s Content Delivery Network to cache jQuery for faster loading.
  • #23: The power of jQuery comes in it&apos;s selector engine which makes working with the HTML DOM easy. In a recent release the selector engine was changed to the blazing fast Sizzle selector engine which is open source as well.
  • #24: jQuery works and is supported in all the modern browsers listed here including IE6. We all would love a day when our clients stop using IE 6 but until that day comes jQuery will support IE 6 and it helps immensely in overcoming some of it’s many short falls. jQuery is tested to work is all modern browsers. The team ensures that there are no issue due to the extensive unit testing that is performed in each browser. Before a major or minor release jQuery’s test suite needs to be run and all tests must pass on each of the browsers listed here before it&apos;s released. To make this job easier John Resig recently released a Mozilla Labs product called TestSwarm which helps javascript libraries like jQuery run their test suites on a distributed set of browsers running portions of the test suite in parallel making development and testing happen much faster. Anyone can offer a browser to the swarm to help test.  Just go to testswarm.com to find out how.
  • #25: jQuery is licensed under both the MIT and GPL open source licenses and you can choose the license that best suits your personal or commercial project and use it accordingly.
  • #26: So now that we know what jquery is let’s see what it can produce. To demonstrate this I’d like to bring up a couple of special guests. Jamie Gillar and John Cicolella from Spotswood High school in New Jersey built a site for a school project that relied heavily on jQuery to produce a rich usable experience. They are going to come up here and tell us how jQuery made it easy for them to develop their site.
  • #27: Let’s explore some of the benefits to you as the developer or designer of working with jQuery.
  • #28: jQuery has one of the best documentation sites for any open source software package, in my opinion. Methods are segmented into easy to understand categories that make finding what your looking for easier. Third party tools make it easy to access the docs where ever you want for instance there is an Adobe AIR application available that has the API documentation so that it is easy to reference from your desktop. Plenty of cheat sheets are on the web including the one on the back of your program for easy look-up of methods and syntax.
  • #29: There is a strong community around jQuery There are many blogs dedicated to jQuery such as  Learning jQuery.com   Many Twitter accounts dedicated to jQuery here are some official accounts:  @jQuery @jqueryui Then there are accounts like ElijahManor who tweets links to tutorials, blog posts, podcasts related to jQuery. Online Tutorial sites  NETTUTS 15 days of jQuery Numerous books that are out and that are slatted to come out Learning jQuery jQuery in Action upcoming jQuery Cookbook that I cowrote which you all got an early copy of when you checked in this morning. Conferences jQuery Conference which is getting bigger year over year. AJAX Experience which starts on Monday Full Frontal JavaScrpt run by Remy Sharp in England Every barcamp now at least has one presentation related to jQuery. There seems to be a increases in training classes now offered for instance: Karl Swedburg offers classes in Michigan and Rebecca Murphy offers occasional classes in NC
  • #30: jQuery is extensible,  which means developers can develop plugins to extend the functionality of jQuery. There are thousands of plugins currently available in the plugin repository at plugins.jquery.com. You can find many others by searching Google or Bing for your desired function followed by ‘jQuery plugin” and you’ll most likely find what you’ll need.
  • #31: jQuery assigns the global $ variable to the jQuery object as a shortcut.  But other libraries also assign an object to the global $ variable.   When this happens you&apos;ll have a conflict and one of the libraries won&apos;t work correctly. jQuery offers a .noconflict method which frees the assignment to the $ back to the other library and you will need to reference the jQuery object as a variable named jQuery instead of the $ alias. On a side note jQuery has only two global variables it uses. $ and the variable called jQuery. $ is the only variable that has a high chance of being overwritten which brings the chance of conflicts with other libraries and third party code very low. So with this ease of writing rich applications that work cross-browser and with all these benefits you might expect jQuery to be used by some high profile companies…
  • #32: And that’s exactly what we see. Here are just a select few of the featured sites using jQuery. But many sites are using jQuery as it’s now included in many development environments making it easy for developers to build blogs, Content management systems and many other sites using jQuery. Plus with the thriving jQuery community constantly giving back with plugins and tutorials it’s getting easier and easier to build richness into your site. So how did we get this thriving community? Where did jQuery come from?
  • #33: jQuery was released at BarCampNYC in January 14th John gave two presentations that day   - A Hot Demo Session John demo&apos;d three projects he was working on for his company at the time, Juniper Bay one of those projects was jQuery     -jQuery -Subverting Social Networks      -co presented with Eric Skiff     -Voted best presentation of BarCamp
  • #34: 1.0 was the first official release after an alpha release in june. It sported a new web site this release marked a huge overhaul in the development process.
  • #35: The 1.1 release marked jQuery’s first birthday from it’s release at BarCampNYC. This release marked 10-20x faster speed improvements then it’s previous release. The API was significantly refactored into a more simplified and consolidated API. Many of the one off methods were condenst into a few methods that did common tasks. This release also sported another web site refresh. And the documentation was completely overhauled and really came into it’s own and started to look like it does today.
  • #36: The 1.1.3 release boasted a 800% speed improvement over previous release as well as a rewritten event system which included graceful keyboad event handling and rewritten effects methods. A major announcement that accompanied this release was the new official project that would bring a collection of user interface plugins to jQuery later that year, jQuery UI
  • #37: 1.2 was a Massive new release which included new features around selectors and new methods. The release removed a number of confusing or unused methods and a compatibility plugin was released in conjuction to help in the transition to this release.
  • #38: The first major release of jQuery UI is released.
  • #39: We quickly arrived at version 1.2.6 after a couple of buggy and problematic releases. This release boasted event handlers that were 103% faster, css selectors that were 13%faster then previous releases. The popular dimensions plugin that is used by plugin developers to determine positioning was incorporated into the core library. Finally this release came with more new features.
  • #40: At the end of the summer last year the designers tried to have some fun with the design of the web site.
  • #41: The “Be a JavaScript Rockstar” tag line proved to be controversal as it did not sit well with the community and the community voiced their opinion. Loudly. But the team listened to the feedback that was being given and quickly, within 24 hours removed the rockstar graphic and fixed the design into what you see today.
  • #42: 1.3 - released on jQuery&apos;s 3rd birthday. (seeing a pattern here yet) The release was released with a new selector engine called Sizzle which boasted significant improvements in selector speed. Live Events: ability to attach events to elements which might not be available at the time the page loads. No More Browser Sniffing: Using feature detection to help jQuery last for many more years to come.   -jQuery announces it will join the Software Freedom Conservancy This affords many benefits to the project the key being that copyright is transferred to the conservancy and ensures no one person owns contributions and patches. This process of joining the conservancy is still being worked out between the team and the conservancy so look for more information on the blog sometime soon.
  • #43: This brings us to the current release 1.3.2
  • #44: Now that we’ve reviewed jquery history…let’s meet the team that is responsible for development, evangelizing and supporting jquery.
  • #45: The Development team is charged with developing the core jQuery library the team includes...
  • #46: Evangelism team is charged with communicating and reaching out to the community and showing them why jQuery is the right tool for the job.  Another job they hold is to listen to the community and come back to the development team and discuss what direction the community wants to go in next. 
  • #47: The jQuery UI team is charged with making rich plugins, widgets and effects to help with User Interface Elements
  • #48: The plugin team is in charge of driving the actual plugin development process and answering questions and concerns of other plugin developers.   Ultimately they will also be in charge of maintaining official jQuery plugins that are coming soon.
  • #49: The web and design team are responsible for designing and maintaining the jquery web infrastructure.
  • #50: So what do you need to do to be able to use jQuery on your page.
  • #51: You need to include jQuery on the page. There are two ways to do this.
  • #52: You can download the jquery library from the jquery site and save it somewhere in your site structure.  Perhaps save it into a  scripts folder or the root of the site.
  • #53: The second way is to reference the latest jquery file from the Google AJAX Libraries. You’ll gain the speed and the location based serving that Googles CDN offers. You’ll also gain the ability of pulling jQuery from the users cache because if a user accesses another site that used the Google CDN then your site will use that copy in your site. Once you have jQuery on the page you need to wait till the DOM is loaded and ready before executing your jquery. 
  • #54: To do that we call document dot ready which waits till the DOM is loaded and then starts the execution of the ready function. This is useful if you bind an event to a DOM Element. By putting it in the Document.Ready method you will ensure the DOM is loaded before the event is attached.  Otherwise the DOM element might not be load before the event is bound.
  • #55: Here is a typical jQuery statement.  All jQuery statements have this basic structure to it.  jQuery is all based around selecting some HTML DOM elements using CSS selectors and performing an action against it. So let&apos;s break this statement down into it&apos;s parts and understand what&apos;s happening.
  • #56: The jQuery library maps the dollar sign variable to the jQuery Object.  You can also initiate the jQuery object directly like this...
  • #57: This is benifitial if you need to free up the $ alias to other libraries with the noconflict method.  but this line is syntatically the same as the previous version of this line.
  • #58: The power of jQuery lies in it&apos;s ability to quickly parse the HTML DOM and select the elements.   jQuery has full CSS Selector 1-3 support
  • #59: Here are some examples of typical jQuery selectors which are basic css 1-3 selectors. jQuery has better css support then most browsers
  • #60: After you&apos;ve made your selection jQuery will return a collection.   Now, you need to do something with that collection like perform an action. For instance you can manipulate the collection, set up interactions or create animations (as we are doing in this example),
  • #61: Learning-jquery.html
  • #62: jQuery organizes it&apos;s methods into the following categories to make it easy to look up a method that you are looking to use.
  • #63: jQuery Core provides essential methods to work with jquery objects, jquery data, methods for plugin development and interoperability with other libraries.
  • #64: Selectors provide the syntax for selecting DOM elements.   jQuery provides the ability to do basic selectors, hierarchal selectors, Filters, content filtering, visibility filtering, attibute filtering,  Child filters and form based filters.
  • #65: Attributes allow you to get, set add and remove attributes from your matched elements as well as getting and setting the innerHTML, Text and values.
  • #66: Traversing allows you to work within your matched set.  So you can more precisely pinpoint your matched set even further. jQuery provides methods to filter the match set further, find another query in your matched set and restore the matched set to it&apos;s previous state before filtering and finding methods were run against the original matched set. Reword!!!!!
  • #67: Manipulation allows you to manipulate the DOM to insert new elements, remove existing elements or manipulate existing elements by wrapping new tags around them.  jQuery has methods that let you change contents, insert elements inside existing elements, insert outside existing elements, insert around existing elements, replace elements, remove elements and copy elements. (remove elements)
  • #68: CSS methods allow you to work directly with the css properties of the matched element. From retrieving the css value of a property to setting the css value.  Retriveing and setting positioning values to height and width values.
  • #69: Events allow you to bind event handlers to a matched element.  Set up Live events for elements that may bubble up after the DOM is loaded.   Be able to perform interactive functions with standard mouse and keyboard events like mouseover, mouseout, keydown and keyup amongst other events.
  • #70: AJAX methods allow you to work with various forms of data, HTML, JSON, JavaScript all remotely.   jQuery allows you to send and receive AJAX requests and handle AJAX Events  
  • #71: Effects allow you to do some simple User Interface interactions by allowing you to show/hide elements.  Slide or fade elements in or out. Or create custom animations that take and element from one CSS state to another by gradually moving the set css properties till they get to the new desired CSS properties.
  • #72: Create Twitter feed widget.
  • #73: Ask if there are any questions if there is time.
  • #74: Ask if there are any questions if there is time.