+ All Categories
Home > Documents > Webmasters' Guild Friday, June 4, 2010 [email protected].

Webmasters' Guild Friday, June 4, 2010 [email protected].

Date post: 16-Jan-2016
Category:
Upload: ashlyn-oneal
View: 215 times
Download: 0 times
Share this document with a friend
48
Webmasters' Guild Friday, June 4, 2010 [email protected]. ny.us
Transcript
Page 1: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

[email protected]

Page 2: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

PollPollPollPoll

Page 3: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Just Thought you should know

Page 4: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Eric SteinbornEric Steinborn

IT2P @ NYS Division of Criminal Justice Services since 2006

15+ years experience with web technologies

Work in a group of 3

– Maintain our intranet (DCJSnet)

– Help with internet and extranet sites

A few things I'm awesome at are:

CSS, JavaScript, Interactivity, Prog Enhancement, UX, SEO, Accessibility

I do what I love -> I love my job!

Page 5: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

What is jQuery?

•jQuery is an Open-Source JavaScript framework that simplifies cross-browser client side scripting.

• Animations

• DOM manipulation

• AJAX

• Extensibility through plugins

•jQuery was created by John Resig and released 01/06

•Most current release is 1.4.2 (2/19/10)

A Little Bit About jQueryA Little Bit About jQuery

Page 6: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Why should you use it?

•Easy to learn! It uses CSS syntax for selection

•Its tiny 71KB (24KB, minified and Gzipped)

•Documented api.jquery.com & Supported forum.jquery.com

•Cross browser compatibility: IE 6+, FF 2+

•It is the most used JavaScript library on the web today• 39% of all sites that use JavaScript use jQuery.

• trends.builtwith.com/javascript/JQuery <- See, I'm not a liar..

A Little Bit About jQueryA Little Bit About jQuery

Page 7: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

I <3 The jQuery CommunityI <3 The jQuery Community

Page 8: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Page 9: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

PWNS All Other FrameworksPWNS All Other Frameworks

Page 10: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Who Uses jQuery?Who Uses jQuery?

docs.jquery.com/Sites_Using_jQuery

Page 11: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Who Uses jQuery In NY?Who Uses jQuery In NY?

Page 12: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

What is the DOM?What is the DOM?

Document Object Model (DOM): noun

Blah blah blah long definition that makes little sense….

Page 13: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

What Is The DOM?What Is The DOM?

Long story short, the DOM is your html document code. From the

<!DOCTYPE> to the </html>

The DOM is loaded top to bottom, so include your scripts at the bottom of the page for best performance.

The DOM is "ready" when everything on the page has loaded. • Stylesheets• JavaScripts• Images

Page 14: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Wait!! Wait!!

In order to make sure that jQuery can find the element you asked it for, your browser needs to have loaded it (the DOM needs to be ready).

Q. How can I be sure my code runs at DOM ready?

A. Wrap all your jQuery code with the document ready function:

$(document).ready(function(){// insert sweet, sweet jQuery code here…

});

Page 15: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

And What If I Don't Wanna, Huh?And What If I Don't Wanna, Huh?

1. Code doesn't work, throws an error (90%)

2. Code works… this page load, next page load see #1. (~9%)

3. Code opens a worm hole that transports your page back to 1990 revolutionizing the Web as we know it. While seemingly great, it also creates a paradox and destroys the universe. * (<1%)

*(has yet to be fully verified)

1 of 3 things will happen:

Page 16: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

We get it Eric, you're a geek…We get it Eric, you're a geek…Get to the jQuery already!Get to the jQuery already!

Your about ta get a wedgie NERD!**spelling intentional

Your about ta get a wedgie NERD!**spelling intentional

Page 17: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Loading jQueryLoading jQuery

In order to use jQuery you need to load it.

You can include it locally on your own server:– <script src="/js/jquery.js">

Or use one of the CDN's made available:– ajax.googleapis.com/ajax/libs/jquery/1.4.2/jquery.min.js

– ajax.microsoft.com/ajax/jquery/jquery-1.4.2.js

– CDN's are Gzipped and minified

Page 18: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Load Scripts At The BottomLoad Scripts At The Bottom

Problem:When scripts are downloading they block everything else in almost all browsers!

Solution:Best practice: Load your scripts at the bottom of your page so they don't interrupt page content downloads.

Page 19: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

And BOOM! Goes The Dynamite.And BOOM! Goes The Dynamite.

Html:

<p>Hello World! I'm Eric</p>Script:

$(function(){

$("p").addClass("isCool");//keep telling yourself that..

});

Resulting html:

<p class="isCool">Hello World! I'm Eric</p>

jsbin.com/ecayo3/18#slide19

Page 20: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Break It Down Now!Break It Down Now!$(function(){// = $(document).ready(function(){

});

$ ("p") .addClass("isCool");

Page 21: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

All Your Basic Selectors Are Belong To UsAll Your Basic Selectors Are Belong To Us

Uses the same syntax you use to style elements in CSS!

api.jquery.com/category/selectors/

Page 22: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Get Classy <p>Get Classy <p>

jQuery:

$("p").addClass("sophisticated");

Before:

<p>

After:

<p class="sophisticated">

jsbin.com/ecayo3/18#slide22

Page 23: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

This <p> Has No Class At All!This <p> Has No Class At All!

jQuery:

$("p").removeClass("sophisticated");

Before:

<p class="sophisticated">

After:

<p class="">

jsbin.com/ecayo3/18#slide22

Page 24: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

<div> Hide and Seek<div> Hide and Seek

jQuery:

$("div").show();

Before:

<div style="display:none;">

After:

<div style="display:block;">

jsbin.com/ecayo3/18#slide24

Page 25: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

I’m Not Lame, Am I?I’m Not Lame, Am I?

jQuery:

$("#eric").text("Is Cool");

Before:

<p id="eric">Is Lame</p>

After:

<p id="eric">Is Cool</p>

jsbin.com/ecayo3/18#slide25

Page 26: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

You Can Chain Most Methods TogetherYou Can Chain Most Methods Together

$("p").addClass("sophisticated").text("Hello World!").show();

jsbin.com/ecayo3/18#slide26

Page 27: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Click Events Are Awesome!Click Events Are Awesome!

$("#eric").click(function(){$(this).text("Is Cool"); // this =

#ericalert("Take that High School!");

});

$("#eric").click(function(event){$(this).text("Is Cool"); // this = #ericalert("Take that High School!");

event.preventDefault(); //Prevents default action});

jsbin.com/ecayo3/18#slide27

Page 28: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Some of Basic MethodsSome of Basic Methods

api.jquery.com/

Page 29: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Getters and SettersGetters and SettersGetters and SettersGetters and Setters

Page 30: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Dual Purpose MethodsDual Purpose Methods

Page 31: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Use jQuery To GetUse jQuery To Get

<p>Eric</p>

Page 32: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Use jQuery To SetUse jQuery To Set

<p>Eric</p>

Page 33: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Questions?Questions?

Page 34: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

PluginsPluginsPluginsPlugins

Page 35: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Viva Variety!Viva Variety!

“If you want to create an animation, effect or UI component, chances are pretty good that someone has done your work for you already.”

-Eric Steinborn 2010

plugins.jquery.com

Page 36: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

I Will Be Covering These PluginsI Will Be Covering These Plugins

Page 37: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

That's Just Typical..That's Just Typical..

1. Download the plugin from its site. – Depending on the plugin you can have 1 or more files to install.

2. Copy the plugin, and any of its dependencies to your server.

3. If needed call css <link href="plugincss.css" />

4. Call jQuery <script src="jQuery.js">

5. Call the plugin <script src"jQuery.pluginname.js">

6. Initialize plugin $("#mypluginContainer").pluginInit();

Page 38: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Go-Go-Get ColorBox!Go-Go-Get ColorBox!

Go to colorpowered.com/colorbox/

This is what you'll get

Page 39: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Go-Go-Install ColorBox!Go-Go-Install ColorBox!

Extract min.js to my "/js/plugins/" folder

I like example 2 so I'll extract

These to my /css/ folder

Page 40: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Go-Go-Prep ColorBox!Go-Go-Prep ColorBox!

In the <head> type: <link rel="stylesheet" href="css/colorbox.css" media="screen" />

In the <body> type: <a href="unicorn.jpg" rel="colorbox"><img src="unicorn-t.jpg"

/></a> <a href="rainbows.jpg" rel="colorbox"><img src="rainbows-t.jpg"

/></a> <a href="sparkles.jpg" rel="colorbox"><img src="sparkles-t.jpg"

/></a>

Before the ending </body> type: <script type="text/javascipt" src="js/jquery.js"></script> <script type="text/javascipt"

src="js/jquery.colorbox-min.js"></script> <script type="text/javascipt"></script>

Page 41: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Go-Go-Gadget ColorBox!Go-Go-Gadget ColorBox!

Inside the empty <script> tag I just entered I'll init ColorBox

<script>$(function(){

$("a[rel='colorbox']").colorbox();});

</script>

Now anytime I click on a thumbnail, I’ll see a ColorBox with my image in it.

Page 42: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Go-Go-Cut It Out Already!Go-Go-Cut It Out Already!

Set custom options for ColorBox like this:

$("a[rel='colorbox']").colorbox({ slideshow: true, // shows all your images in sequence slideshowSpeed: 5000, // set the speed of the slideshow in

MS transition: "fade",// set the transition between images speed: 1000 // set the speed of the transition

in MS});

Download ColorBox @ colorpowered.com/colorbox/

jsbin.com/ecayo3/18#slide41

Page 43: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

tablesortertablesorter

Head:

<link href="css/tablesorter.css" />HTML:

<table id="ericsDreams"><!-- full table code --></table>

Foot:

<script src="js/jquery.tablesorter.min.js"></script>

<script>$(function(){

$("#ericsDreams").tablesorter();});

</script>

Page 44: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

tablesorter Optionstablesorter Options

Set custom options for tablesorter like this:

$("#ericsDreams").tablesorter({widgets: ['zebra'] // Zebra stripes alternating rows

});

Download tablesorter @ tablesorter.com/docs/

http://jsbin.com/ecayo3/18#slide43

Page 45: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

ListNavListNav

Head:

<link href="css/listnav.css" />HTML:

<div id="ericsDreams-nav"></div> <!--needed for nav list--><ul id="ericsDreams"><!-- lots of li's --></ul>

Foot:

<script src="js/jquery.listnav.min.2.1.js"></script> <script>

$(function(){$("#ericsDreams").listnav();

}); </script>

Page 46: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

ListNav OptionsListNav Options

Set custom options for ListNav like this:

$("#ericsDreams").listnav({ showCounts: false, // Don’t show counts above letters

noMatchText: "Fail!", // Custom text for invalid selectionscookieName: "Dreams", // Selection saved in CookieincludeOther: true // Include an Other option [~!@#]

});

// include cookie plugin for cookieName to functionDownload ListNav @ ihwy.com/Labs/jquery-listnav-plugin.aspx

jsbin.com/ecayo3/18#slide45

Page 47: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

Great ReferencesGreat References

John Resig's introduction slides

jQuery 1.4 Cheat Sheet

jQuery API

jQuery Forums

YAYquery Podcast (explicit)

DEMOS:

jsbin.com/ecayo3/18

[email protected]

Page 48: Webmasters' Guild Friday, June 4, 2010 Eric.Steinborn@dcjs.state.ny.us.

Webmasters' GuildFriday, June 4, 2010

I Like I Like Plugins!Plugins!Show Us Show Us More!More!


Recommended