SlideShare uma empresa Scribd logo
1 de 23
JQUERY
Prepared By

Jay Poojara

1
WHAT IS JQUERY?
jQuery is a fast, small, and feature-rich JavaScript library. It
makes things like HTML document traversal and manipulation, event
handling, animation, and Ajax much simpler with an easy-to-use API
that works across a multitude of browsers. With a combination of
versatility and extensibility, jQuery has changed the way that millions of
people write JavaScript.

2
WHY IS JQUERY AWESOME?
What jQuery does well:
1.
2.
3.
4.
5.

Simplified AJAX
DOM Manipulation
Event Management
Animations
Normalizes Browser Differences

Why It Is Successful:
1.
2.
3.
4.
5.

Well Designed
Easy to extend with plugins
Great Documentation
Large jQuery Community
Cross-browser

3
JQUERY FOUNDER

4
WHO'S USING JQUERY?

….This are some of the examples….

5
JQUERY PHILOSOPHY
Find some stuff

Do something to it

6
SAMPLE JQUERY
Our DOM
Include jQuery
The „ready event‟ – Binds a function to
be executed whenever the DOM is
ready
Select the „toggleContent‟ DOM
element and bind a click event
handler to it.
Select the „content‟ DOM element and
set the text to „Hello World!‟
Prevent the default behavior of the
anchor tag by returning false
7
DOLLAR FUNCTION $();
• JavaScript identifiers can start with $
• The jQuery framework automatically assigns „$‟ to the „jQuery‟
function
$ === jQuery true
$(selector) is same as jQuery(selector)

• Can use utility function to unassign $
$.noConflict();
$ === jQuery;

false

• Can reassign jQuery to another variable
$j = $.noConflict();

$j === jQuery;

true

$j === $;

false
8

$ === jQuery;

false
DOCUMENT READY EVENT
• $(document).ready(fn);
• The bound function will be called the instant the
DOM is ready to be read and manipulated.
• As many as you want on the page.
• Executed in the order they were added.

• There is a shortcut: $(fn);

9
SELECTORS
CSS3 Selectors
jQuery

Selects…

$(„#myId‟)

By ID

$(„div‟)

By Element Type

$(„.myClass‟)

By Class

$(„div, span, p.myClass, #myid‟)

Multiple

$(„*‟)

All

$(„.myClass‟, this), $(„p.myClass‟)

By Context (better performance)

$(„#main div‟)

Descendents (all levels)

$(„#main > div‟)

Children (first level)

$(„label + input‟)

The immediate element after

$(„#prev ~ div‟)

The first element after

$(„div[id]‟)

All elements that have the specified attribute

$(„input[type=text]‟)

By Attribute value
10
FILTERS
$(„div:empty‟), $(„:empty‟), $(„div:not(:empty)‟)
jQuery

Filters…

:first, :last, :nth(n)

First, Last, Nth Element

:odd, :even

Odd, Even Elements

:visible, :hidden

Visible, Hidden Elements

:enabled, :disabled

Enabled, Disabled Elements

:contains(“text”)

Contains specified text

:empty

Elements w/ no children (or text)

:first-child, :last-child, :nthchild(n)

Child Element

:lt(n), :gt(n)

Elements w/ index below or after

:not(selector)

Does not match selector

:MyCustomFilter

Custom Filters (Implement your own!)

Custom Filter Used

11
CHAINING
• Most jQuery methods return another jQuery object (usually the same
collection), which means you can chain method calls together with a
fluent like syntax
• Some methods that stop a chain, these methods return a value from the
jQuery object
.css(name), .text(), .html(), .val(), .height(), .width(), .is(„:visible‟)

• Some methods will return a different jQuery collection, you can revert
to the previous collection by calling .end();

12
ATTRIBUTES & CLASSES
• Getters & Setters for attr, html, text, val
• Getter (returns String – breaks chain)
var text = $(„#myDiv‟).text();

• Setter (returns jQuery)
$(„#myDiv‟).text(„Hello World!‟);

• text() escapes html()
• val() used with inputs

• attr() can take JSON

• Add, Remove for Attributes & Classes
• .removeAttr(„someAttr‟);
• .addClass(„someClass‟);

• .removeClass(„someClass‟);
• .toggleClass(„someClass‟);
13
TRAVERSING
• Family
• parent, parents, siblings, children

• Proximity
• closest, next, prev, nextAll, prevAll

• Searching
• find

14
EVENTS
.bind(type, data, fn)
• Binds a handler to an event on all matched elements

.one(type, data, fn)
• Binds a handler to be executed only once for each matched element

.trigger(event, data)
• Trigger an event to occur on all matched elements

.unbind(type, fn)
• Removes event handlers from all matched elements

.live(type, fn)
• Binds a handler to an event on all currently matched and future matched elements.

.die(type, fn)
• Removes a bound live event.

.hover(fnOver, fnOut)
• Interaction helper that will handle mouseover and mouseout

.toggle(fn1, fn2, fn3, fnN, …)
• Interaction helper that will toggle among two or more function calls every other click.

15
EVENT HELPERS
blur, change, click, dblclick, error, focus, keydown, keypress, k
eyup, load, mousedown, mouseenter, mouseleave, mousemov
e, mouseup, resize, scroll, select, submit, unload

16
MANIPULATION
• Inserting Inside
•

append, prepend

•

appendTo, prependTo

• Inserting Outside
•

after, before

•

insertAfter, insertBefore

• Inserting Around
•

wrapInner

•

wrap

•

wrapAll

• Replacing
•

replaceWith, replaceAll

• Removing
•

empty, remove

• Copying
•

clone
17
EFFECTS
• Basics
• show, hide, toggle

• Sliding
• slideUp, slideDown, slideToggle

• Fading
• fadeIn, fadeOut, fadeTo (opacity 0-1)

• Custom
• animate, stop

18
PLUG-INS
• Extremely Simple – Promotes code reuse and DRY principle
$.fn.MyPlugin = function(params) {};

• Return a jQuery object to prevent from “breaking the chain”
• Unless you are returning a specific value

• Best Practice is to wrap the plug-in declaration within an anonymous
JavaScript function in order to prevent collisions with the use of $

19
UTILITY FUNCTIONS
• Array and Object Operations
$.each(object, callback) – Callback function will run for each item in the object. The each method
is meant to be an immutable iterator and returns the original array.
$.map(array, callback) – Callback function will run for each item in the array. The map method
can be used as an iterator, but is designed to be used for manipulation of the supplied array
and returns a new array.
$.merge(first, second) – Merges the second array into the first array.
$.unique(array) – Removes duplicate elements (only works on arrays of DOM elements).
$.extend(object) – Add functions into the jQuery namespace.
$.extend(deep, target, object1, objectN) – Merge values from objects 1 to N into target object.
Deep is an optional boolean that if true, tells jQuery to do a deep copy.
$.grep(array, callback, invert) – Iterates through array, and returns a new array with values from
the original array that satisfy the criteria specified in the callback.
$.inArray(value, array) – Gets the index of the value in the array (-1 if not found).

• String Operations
$.trim(str) – Removes whitespace from the given string.

• Test Operations
$.isArray(obj) – Determines if the object is an array.
$.isFunction(obj) – Determines if the object is a function.

20
JQUERY DATA
• Can store data on one or more jQuery elements
• .data(name, value)

• value is an object

• Retrieves data from the first element in the jQuery object
• .data(name)

21
RESOURCES
• jQuery Main
•

http://jquery.com

•

http://docs.jquery.com/Downloading_jQuery

• jQuery API Documentation
•

http://api.jquery.com

•

http://docs.jquery.com

• jQuery UI
•

http://jqueryui.com

•

http://jqueryui.com/themeroller/

• jQuery Blog
•

http://blog.jquery.com/

• Around The Web
•

•

http://www.nettuts.com

•

•

http://stackoverflow.com

http://www.smashingmagazine.com

Tools
•

Visual Studio JavaScript Intellisense Support (KB958502)

•

http://getfirebug.com/ (Firebug Firefox Plug-in)

•

http://jsbin.com/ (JS Bin - Collaborative JavaScript Debugging)

22
THANK YOU
Even a correct decision is wrong when it was taken too
late.

any Queries?

23

Mais conteúdo relacionado

Mais procurados

Mais procurados (20)

JavaScript & Dom Manipulation
JavaScript & Dom ManipulationJavaScript & Dom Manipulation
JavaScript & Dom Manipulation
 
JavaScript - Chapter 11 - Events
 JavaScript - Chapter 11 - Events  JavaScript - Chapter 11 - Events
JavaScript - Chapter 11 - Events
 
jQuery
jQueryjQuery
jQuery
 
JavaScript - An Introduction
JavaScript - An IntroductionJavaScript - An Introduction
JavaScript - An Introduction
 
jQuery PPT
jQuery PPTjQuery PPT
jQuery PPT
 
Javascript
JavascriptJavascript
Javascript
 
Js ppt
Js pptJs ppt
Js ppt
 
JavaScript - Chapter 12 - Document Object Model
  JavaScript - Chapter 12 - Document Object Model  JavaScript - Chapter 12 - Document Object Model
JavaScript - Chapter 12 - Document Object Model
 
Learning jQuery in 30 minutes
Learning jQuery in 30 minutesLearning jQuery in 30 minutes
Learning jQuery in 30 minutes
 
Lab #2: Introduction to Javascript
Lab #2: Introduction to JavascriptLab #2: Introduction to Javascript
Lab #2: Introduction to Javascript
 
Introduction to Javascript
Introduction to JavascriptIntroduction to Javascript
Introduction to Javascript
 
Event In JavaScript
Event In JavaScriptEvent In JavaScript
Event In JavaScript
 
jQuery
jQueryjQuery
jQuery
 
Javascript basics
Javascript basicsJavascript basics
Javascript basics
 
JavaScript - Chapter 10 - Strings and Arrays
 JavaScript - Chapter 10 - Strings and Arrays JavaScript - Chapter 10 - Strings and Arrays
JavaScript - Chapter 10 - Strings and Arrays
 
Java script
Java scriptJava script
Java script
 
JavaScript Programming
JavaScript ProgrammingJavaScript Programming
JavaScript Programming
 
Javascript
JavascriptJavascript
Javascript
 
Introduction to JavaScript
Introduction to JavaScriptIntroduction to JavaScript
Introduction to JavaScript
 
Windows form application - C# Training
Windows form application - C# Training Windows form application - C# Training
Windows form application - C# Training
 

Destaque

Communication skill ii
Communication skill iiCommunication skill ii
Communication skill ii
Rudra Bhatt
 
Introduction To Javascript
Introduction To JavascriptIntroduction To Javascript
Introduction To Javascript
Rajat Pandit
 

Destaque (20)

jQuery Essentials
jQuery EssentialsjQuery Essentials
jQuery Essentials
 
jQuery Presentation
jQuery PresentationjQuery Presentation
jQuery Presentation
 
Leap motion
Leap motionLeap motion
Leap motion
 
Jquery- One slide completing all JQuery
Jquery- One slide completing all JQueryJquery- One slide completing all JQuery
Jquery- One slide completing all JQuery
 
Présentation jQuery pour débutant
Présentation jQuery pour débutantPrésentation jQuery pour débutant
Présentation jQuery pour débutant
 
Jquery - introduction au langage
Jquery - introduction au langageJquery - introduction au langage
Jquery - introduction au langage
 
JQuery
JQueryJQuery
JQuery
 
Jazz up your JavaScript: Unobtrusive scripting with JavaScript libraries
Jazz up your JavaScript: Unobtrusive scripting with JavaScript librariesJazz up your JavaScript: Unobtrusive scripting with JavaScript libraries
Jazz up your JavaScript: Unobtrusive scripting with JavaScript libraries
 
Communication skill ii
Communication skill iiCommunication skill ii
Communication skill ii
 
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
jQuery Makes Writing JavaScript Fun Again (for HTML5 User Group)
 
Introduction To Javascript
Introduction To JavascriptIntroduction To Javascript
Introduction To Javascript
 
Introduction to JavaScript
Introduction to JavaScriptIntroduction to JavaScript
Introduction to JavaScript
 
Hololens
Hololens Hololens
Hololens
 
JavaScript and jQuery Basics
JavaScript and jQuery BasicsJavaScript and jQuery Basics
JavaScript and jQuery Basics
 
Bootstrap PPT by Mukesh
Bootstrap PPT by MukeshBootstrap PPT by Mukesh
Bootstrap PPT by Mukesh
 
Leap motion
Leap motionLeap motion
Leap motion
 
Bootstrap ppt
Bootstrap pptBootstrap ppt
Bootstrap ppt
 
jQuery from the very beginning
jQuery from the very beginningjQuery from the very beginning
jQuery from the very beginning
 
Project Seminar on Leapmotion Technology
Project Seminar on Leapmotion TechnologyProject Seminar on Leapmotion Technology
Project Seminar on Leapmotion Technology
 
Leap motion
Leap motionLeap motion
Leap motion
 

Semelhante a jQuery

JQuery New Evolution
JQuery New EvolutionJQuery New Evolution
JQuery New Evolution
Allan Huang
 

Semelhante a jQuery (20)

jQuery
jQueryjQuery
jQuery
 
Jquery
JqueryJquery
Jquery
 
J query introduction
J query introductionJ query introduction
J query introduction
 
Jquery for Beginners
Jquery for BeginnersJquery for Beginners
Jquery for Beginners
 
Introduction to jQuery
Introduction to jQueryIntroduction to jQuery
Introduction to jQuery
 
Javascript And J Query
Javascript And J QueryJavascript And J Query
Javascript And J Query
 
Scala coated JVM
Scala coated JVMScala coated JVM
Scala coated JVM
 
Building android apps with kotlin
Building android apps with kotlinBuilding android apps with kotlin
Building android apps with kotlin
 
JQuery New Evolution
JQuery New EvolutionJQuery New Evolution
JQuery New Evolution
 
A Rich Web experience with jQuery, Ajax and .NET
A Rich Web experience with jQuery, Ajax and .NETA Rich Web experience with jQuery, Ajax and .NET
A Rich Web experience with jQuery, Ajax and .NET
 
jQuery Rescue Adventure
jQuery Rescue AdventurejQuery Rescue Adventure
jQuery Rescue Adventure
 
JQuery
JQueryJQuery
JQuery
 
Hadoop + Clojure
Hadoop + ClojureHadoop + Clojure
Hadoop + Clojure
 
Hw09 Hadoop + Clojure
Hw09   Hadoop + ClojureHw09   Hadoop + Clojure
Hw09 Hadoop + Clojure
 
Jquery plugin development
Jquery plugin developmentJquery plugin development
Jquery plugin development
 
Revenge of the 80s: Cut/Copy/Paste, Undo/Redo, and More Big Hits (CocoaConf C...
Revenge of the 80s: Cut/Copy/Paste, Undo/Redo, and More Big Hits (CocoaConf C...Revenge of the 80s: Cut/Copy/Paste, Undo/Redo, and More Big Hits (CocoaConf C...
Revenge of the 80s: Cut/Copy/Paste, Undo/Redo, and More Big Hits (CocoaConf C...
 
Jquery 3
Jquery 3Jquery 3
Jquery 3
 
jQuery
jQueryjQuery
jQuery
 
jQuery introduction
jQuery introductionjQuery introduction
jQuery introduction
 
jQuery - Tips And Tricks
jQuery - Tips And TricksjQuery - Tips And Tricks
jQuery - Tips And Tricks
 

Último

Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Último (20)

EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWEREMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
EMPOWERMENT TECHNOLOGY GRADE 11 QUARTER 2 REVIEWER
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
Biography Of Angeliki Cooney | Senior Vice President Life Sciences | Albany, ...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 

jQuery

  • 2. WHAT IS JQUERY? jQuery is a fast, small, and feature-rich JavaScript library. It makes things like HTML document traversal and manipulation, event handling, animation, and Ajax much simpler with an easy-to-use API that works across a multitude of browsers. With a combination of versatility and extensibility, jQuery has changed the way that millions of people write JavaScript. 2
  • 3. WHY IS JQUERY AWESOME? What jQuery does well: 1. 2. 3. 4. 5. Simplified AJAX DOM Manipulation Event Management Animations Normalizes Browser Differences Why It Is Successful: 1. 2. 3. 4. 5. Well Designed Easy to extend with plugins Great Documentation Large jQuery Community Cross-browser 3
  • 5. WHO'S USING JQUERY? ….This are some of the examples…. 5
  • 6. JQUERY PHILOSOPHY Find some stuff Do something to it 6
  • 7. SAMPLE JQUERY Our DOM Include jQuery The „ready event‟ – Binds a function to be executed whenever the DOM is ready Select the „toggleContent‟ DOM element and bind a click event handler to it. Select the „content‟ DOM element and set the text to „Hello World!‟ Prevent the default behavior of the anchor tag by returning false 7
  • 8. DOLLAR FUNCTION $(); • JavaScript identifiers can start with $ • The jQuery framework automatically assigns „$‟ to the „jQuery‟ function $ === jQuery true $(selector) is same as jQuery(selector) • Can use utility function to unassign $ $.noConflict(); $ === jQuery; false • Can reassign jQuery to another variable $j = $.noConflict(); $j === jQuery; true $j === $; false 8 $ === jQuery; false
  • 9. DOCUMENT READY EVENT • $(document).ready(fn); • The bound function will be called the instant the DOM is ready to be read and manipulated. • As many as you want on the page. • Executed in the order they were added. • There is a shortcut: $(fn); 9
  • 10. SELECTORS CSS3 Selectors jQuery Selects… $(„#myId‟) By ID $(„div‟) By Element Type $(„.myClass‟) By Class $(„div, span, p.myClass, #myid‟) Multiple $(„*‟) All $(„.myClass‟, this), $(„p.myClass‟) By Context (better performance) $(„#main div‟) Descendents (all levels) $(„#main > div‟) Children (first level) $(„label + input‟) The immediate element after $(„#prev ~ div‟) The first element after $(„div[id]‟) All elements that have the specified attribute $(„input[type=text]‟) By Attribute value 10
  • 11. FILTERS $(„div:empty‟), $(„:empty‟), $(„div:not(:empty)‟) jQuery Filters… :first, :last, :nth(n) First, Last, Nth Element :odd, :even Odd, Even Elements :visible, :hidden Visible, Hidden Elements :enabled, :disabled Enabled, Disabled Elements :contains(“text”) Contains specified text :empty Elements w/ no children (or text) :first-child, :last-child, :nthchild(n) Child Element :lt(n), :gt(n) Elements w/ index below or after :not(selector) Does not match selector :MyCustomFilter Custom Filters (Implement your own!) Custom Filter Used 11
  • 12. CHAINING • Most jQuery methods return another jQuery object (usually the same collection), which means you can chain method calls together with a fluent like syntax • Some methods that stop a chain, these methods return a value from the jQuery object .css(name), .text(), .html(), .val(), .height(), .width(), .is(„:visible‟) • Some methods will return a different jQuery collection, you can revert to the previous collection by calling .end(); 12
  • 13. ATTRIBUTES & CLASSES • Getters & Setters for attr, html, text, val • Getter (returns String – breaks chain) var text = $(„#myDiv‟).text(); • Setter (returns jQuery) $(„#myDiv‟).text(„Hello World!‟); • text() escapes html() • val() used with inputs • attr() can take JSON • Add, Remove for Attributes & Classes • .removeAttr(„someAttr‟); • .addClass(„someClass‟); • .removeClass(„someClass‟); • .toggleClass(„someClass‟); 13
  • 14. TRAVERSING • Family • parent, parents, siblings, children • Proximity • closest, next, prev, nextAll, prevAll • Searching • find 14
  • 15. EVENTS .bind(type, data, fn) • Binds a handler to an event on all matched elements .one(type, data, fn) • Binds a handler to be executed only once for each matched element .trigger(event, data) • Trigger an event to occur on all matched elements .unbind(type, fn) • Removes event handlers from all matched elements .live(type, fn) • Binds a handler to an event on all currently matched and future matched elements. .die(type, fn) • Removes a bound live event. .hover(fnOver, fnOut) • Interaction helper that will handle mouseover and mouseout .toggle(fn1, fn2, fn3, fnN, …) • Interaction helper that will toggle among two or more function calls every other click. 15
  • 16. EVENT HELPERS blur, change, click, dblclick, error, focus, keydown, keypress, k eyup, load, mousedown, mouseenter, mouseleave, mousemov e, mouseup, resize, scroll, select, submit, unload 16
  • 17. MANIPULATION • Inserting Inside • append, prepend • appendTo, prependTo • Inserting Outside • after, before • insertAfter, insertBefore • Inserting Around • wrapInner • wrap • wrapAll • Replacing • replaceWith, replaceAll • Removing • empty, remove • Copying • clone 17
  • 18. EFFECTS • Basics • show, hide, toggle • Sliding • slideUp, slideDown, slideToggle • Fading • fadeIn, fadeOut, fadeTo (opacity 0-1) • Custom • animate, stop 18
  • 19. PLUG-INS • Extremely Simple – Promotes code reuse and DRY principle $.fn.MyPlugin = function(params) {}; • Return a jQuery object to prevent from “breaking the chain” • Unless you are returning a specific value • Best Practice is to wrap the plug-in declaration within an anonymous JavaScript function in order to prevent collisions with the use of $ 19
  • 20. UTILITY FUNCTIONS • Array and Object Operations $.each(object, callback) – Callback function will run for each item in the object. The each method is meant to be an immutable iterator and returns the original array. $.map(array, callback) – Callback function will run for each item in the array. The map method can be used as an iterator, but is designed to be used for manipulation of the supplied array and returns a new array. $.merge(first, second) – Merges the second array into the first array. $.unique(array) – Removes duplicate elements (only works on arrays of DOM elements). $.extend(object) – Add functions into the jQuery namespace. $.extend(deep, target, object1, objectN) – Merge values from objects 1 to N into target object. Deep is an optional boolean that if true, tells jQuery to do a deep copy. $.grep(array, callback, invert) – Iterates through array, and returns a new array with values from the original array that satisfy the criteria specified in the callback. $.inArray(value, array) – Gets the index of the value in the array (-1 if not found). • String Operations $.trim(str) – Removes whitespace from the given string. • Test Operations $.isArray(obj) – Determines if the object is an array. $.isFunction(obj) – Determines if the object is a function. 20
  • 21. JQUERY DATA • Can store data on one or more jQuery elements • .data(name, value) • value is an object • Retrieves data from the first element in the jQuery object • .data(name) 21
  • 22. RESOURCES • jQuery Main • http://jquery.com • http://docs.jquery.com/Downloading_jQuery • jQuery API Documentation • http://api.jquery.com • http://docs.jquery.com • jQuery UI • http://jqueryui.com • http://jqueryui.com/themeroller/ • jQuery Blog • http://blog.jquery.com/ • Around The Web • • http://www.nettuts.com • • http://stackoverflow.com http://www.smashingmagazine.com Tools • Visual Studio JavaScript Intellisense Support (KB958502) • http://getfirebug.com/ (Firebug Firefox Plug-in) • http://jsbin.com/ (JS Bin - Collaborative JavaScript Debugging) 22
  • 23. THANK YOU Even a correct decision is wrong when it was taken too late. any Queries? 23

Notas do Editor

  1. Unobtrusive JavaScriptLess code
  2. Unobtrusive JavaScriptLess code
  3. Demo
  4. Demo
  5. Demo
  6. Demo
  7. Demo
  8. Demo
  9. Demo