SlideShare a Scribd company logo
jQuery Quick Tuts
Mr. Huy – IT
1
S: nasavietnam
Y: nasa8x
E: nasavietnam@gmail.com
Overview
1. Why choose jQuery?
2
2. Selectors
3. Attributes
4. Ajax
5. Events
6. Effects & Animation
7. Plugins
8. Q & A
Why choose jQuery?
3
JavaScript Distribution in Top Million Sites
http://trends.builtwith.com/javascript
Why choose jQuery?
4
Led to World Domination
http://www.google.com/trends/?q=dojo+javascript,+jquery+javascript,+yui+javascript,+prototype+javas
cript,+mootools+javascript&ctab=0&geo=all&date=all&sort=1
Why choose jQuery?
5
jQuery rescues us by working the same in all browsers!
Why choose jQuery?
6
Easier to write jQuery than pure JavaScript
With pure Javascript:
var _divs=document.getElementByTagName(‘div’);
for(var i=0;i<_divs.length;i++)
{
_divs[i].style.display=‘none’;
}
With jQuery:
$(‘div’).hide();
Why choose jQuery?
7
Benefits after the course?
Overview
1. Why choose jQuery?
8
2. Selectors
3. Attributes
4. Ajax
5. Events
6. Effects & Animation
7. Plugins
8. Q & A
Selectors
9
$(…) is a selector
$(‘#id’)
get element by id
<html>
<body>
<div>jQuery examples</div>
<div id="foo">example</div>
</body>
</html>
<html>
<body>
<div>jQuery examples</div>
<div id="foo">example</div>
</body>
</html>
Selectors
10
$(‘.className’)
get elements by class
<html>
<body>
<div>jQuery examples</div>
<div class="foo">example</div>
<div class="foo">example</div>
</body>
</html>
<html>
<body>
<div>jQuery examples</div>
<div class="foo">example</div>
<div class="foo">example</div>
</body>
</html>
Selectors
11
$(‘div’)
get elements by tag name
<html>
<body>
<p>jQuery examples</p>
<div class="foo">example</div>
<div class="foo">example</div>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<div class="foo">example</div>
<div class="foo">example</div>
</body>
</html>
Selectors
12
$(‘#foo > p’)
get all elements by p that are children of a element #foo
<html>
<body>
<p>jQuery examples</p>
<div id="foo">
<p></p>
<p></p>
<div>
<p></p>
</div>
</div>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<div id="foo">
<p></p>
<p></p>
<div>
<p></p>
</div>
</div>
</body>
</html>
Selectors
13
$(‘#foo p’)
get all elements by p that are descendants of a element #foo
<html>
<body>
<p>jQuery examples</p>
<div id="foo">
<p></p>
<p></p>
<div>
<p></p>
</div>
</div>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<div id="foo">
<p></p>
<p></p>
<div>
<p></p>
</div>
</div>
</body>
</html>
Selectors
14
$(‘a*href+’)
Get all links with contains href attribute
<html>
<body>
<p>jQuery examples</p>
<a rel=“vmgmedia.vn”></a>
<a href=“//vmgmedia.vn”></a>
<div>
<a href=“//vmgmedia.vn”></a>
</div>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<a rel=“vmgmedia.vn”></a>
<a href=“//vmgmedia.vn”></a>
<div>
<a href=“//vmgmedia.vn”></a>
</div>
</body>
</html>
Selectors
15
$(‘a*rel=nofollow+’)
Get all <a> elements that have a rel value exactly equal to nofollow
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow”></a>
<a href=“//vmgmedia.vn”></a>
<a href=“//vmgmedia.vn”
rel=“nofollow” ></a>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow”></a>
<a href=“//vmgmedia.vn”></a>
<a href=“//vmgmedia.vn”
rel=“nofollow” ></a>
</body>
</html>
Selectors
16
a[href^=https]
Get all elements that have the href attribute with a value beginning
exactly with the string https
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow”></a>
<a href=“//vmgmedia.vn”></a>
<a href=“https://xyz.vn”></a>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow”></a>
<a href=“//vmgmedia.vn”></a>
<a href=“https://xyz.vn”></a>
</body>
</html>
Selectors
17
a[href$=.zip]
Get all elements that have the href attribute with a value ending
exactly with the string .zip
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow”></a>
<a href=“//vmgmedia.vn”></a>
<a href=“https://xyz.vn/file.zip”>
</a>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow”></a>
<a href=“//vmgmedia.vn”></a>
<a href=“https://xyz.vn/file.zip”>
</a>
</body>
</html>
Selectors
18
a[href*=vmg]
Get all elements that have the href attribute with a value containing
the substring vmg
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow”></a>
<a href=“//vmgmedia.vn”></a>
<a href=“https://xyz.vn/file.zip”>
</a>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow”></a>
<a href=“//vmgmedia.vn”></a>
<a href=“https://xyz.vn/file.zip”>
</a>
</body>
</html>
Selectors
19
a[rel~=vmg]
Get all elements that have the rel attribute with a value containing the
word vmg, delimited by spaces
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow vmg”></a>
<a rel=“vmgmedia”></a>
<a rel=“vmg”> </a>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<a rel=“nofollow vmg”></a>
<a rel=“vmgmedia”></a>
<a rel=“vmg”> </a>
</body>
</html>
Selectors
20
a[id|=vmg]
Get all elements that have the id attribute with a value either equal to
vmg, or beginning with vmg and a hyphen (-).
<html>
<body>
<p>jQuery examples</p>
<a id=“vmg-1”></a>
<a id=“vmg-2”></a>
<a id=“vmg”> </a>
</body>
</html>
<html>
<body>
<p>jQuery examples</p>
<a id=“vmg-1”></a>
<a id=“vmg-2”></a>
<a id=“vmg”> </a>
</body>
</html>
Selectors
21
:first, :first-child
Select first element in the list item. Ex: $(‘li:first’)
<html>
<body>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</body>
</html>
<html>
<body>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
</body>
</html>
Selectors
22
:parent
Select all elements that are the parent of another element, including text nodes.
Ex: $(‘li:parent’)
<html>
<body>
<ul>
<li>
<a></a>
</li>
<li>&nbsp;</li>
<li></li>
</ul>
</body>
</html>
<html>
<body>
<ul>
<li>
<a></a>
</li>
<li>&nbsp;</li>
<li></li>
</ul>
</body>
</html>
Selectors
23
:contains(text)
Selects all elements that contain the text text
Ex: $(‘p:contains(vmg)’)
<html>
<body>
<p>Vmg</p>
<p>vmgmedia</p>
<p>vmg</p>
<p>VMG</p>
</body>
</html>
<html>
<body>
<p>Vmg</p>
<p>vmgmedia</p>
<p>vmg</p>
<p>VMG</p>
</body>
</html>
Selectors
24
:has(E)
Select all elements that contain an element matching E.
Ex: $(‘li:has(a)’)
<ul>
<li></li>
<li>
<a></a>
</li>
<li></li>
<li>
<a></a>
</li>
</ul>
<ul>
<li></li>
<li>
<a></a>
</li>
<li></li>
<li>
<a></a>
</li>
</ul>
Selectors
25
:not(E)
Get all elements that do not match the selector expression E
Ex: $(‘li:not(:last)’)
<ul>
<li></li>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
Selectors
26
:hidden, : visible
Select all elements that are hidden or visible
:input, :text, :password, :radio, :submit, :checked, :selected…
Select form elements
$(‘#id, .class, div’)
Multiple selectors in one
DOM - Selector Expressions
27
DOM: Document Model Object
New jQuery object in the DOM:
- $(object)
- $(html)
- $(selector[,context])
- $(element)
- $(elementsCollection)
DOM - Selector Expressions
28
Selector Context
$(‘#foo').click(function() {
$('span', this).addClass(‘highlight');
});
DOM - Selector Expressions
29
DOM Element
$(‘#foo').click(function() {
$(this).addClass(‘highlight');
});
Cloning jQuery Objects
$(‘<div><p></p></div>’).appendTo(“body”)
DOM - Selector Expressions
30
.filter()
Reduce the set of matched elements to those that match the selector
or pass the function’s test. Ex: $(‘li’).filter(‘:last’)
<ul>
<li></li>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
.filter(selector)
.filter(function)
DOM - Selector Expressions
31
.eq(n)
Get one element at the specified index.
Ex: $(‘li’).eq(1)
<ul>
<li></li>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
<li></li>
</ul>
DOM - Selector Expressions
32
.slice(start[,end])
Get elements to a subset specified by a range of indices
Ex: $(‘li’).slice(1,3)
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
<ul>
<li></li>
<li></li>
<li></li>
<li></li>
</ul>
Selectors
33
.children([selector])
Get the children of each element in the set of matched
elements, optionally filtered by a selector. Ex: $(‘li.foo’).children()
<ul>
<li class=‘foo’>
<ul>
<li></li>
<li></li>
</ul>
</li>
<li></li>
</ul>
<ul>
<li class=‘foo’>
<ul>
<li></li>
<li></li>
</ul>
</li>
<li></li>
</ul>
Selectors
34
.parents([selector])
Get the ancestors of each element in the current set of matched
elements, optionally filtered by a selector.
<div class=‘foo’></div>
<div class=‘foo’></div>
<div class=‘foo’>
<a id=‘click’></a>
</div>
<div class=‘foo’></div>
$(‘#click’).bind(‘click’, functi
on(){
$(this).parents(‘.foo’).
addClass(‘highlight’)
})
DOM - Selector Expressions
35
.parent([selector])
Get the parent of each element in the current set of matched
elements, optionally filtered by a selector. Ex: $(‘#click’).parent()
<div>
<ul class=‘foo’>
<li>
<a class=‘click’></a>
</li>
</ul>
</div>
<div>
<ul class=‘foo’>
<li>
<a class=‘click’></a>
</li>
</ul>
</div>
DOM - Selector Expressions
36
.is(selector)
Return true if at least one of these elements matches the selector
.hasClass(className)
Return true if elements exist className
.addClass(className)/.removeClass(className)
Add/remove class of element(s)
DOM - Selector Expressions
37
.replaceWith(newContent)
Replace each element by newContent.
Ex: $(‘#main’).replaceWidth(‘<p>new content</p>’)
<div>
<div id=‘main’>
</div>
</div>
<div>
<p>new content</p>
</div>
DOM - Selector Expressions
38
.replaceAll(target)
Replace each target element with the set of matched elements.
Ex: $(‘#main’).replaceAll($(‘.target’))
<div id=‘main’>Hello</div>
<div class=‘target’>
Hello 2
</div>
<div class=‘target’>
Hello 2
</div>
<div id=‘main’>Hello</div>
<div id=‘main’>Hello</div>
DOM - Selector Expressions
39
.prepend(content)
Insert content to fisrt child of elements.
Ex: $(‘#main’).prepend(“<div>new</div>”)
<div id=‘main’>
<p>Hello</p>
<p>Hello2</p>
</div>
<div id=‘main’>
<div> new</div>
<p>Hello</p>
<p>Hello2</p>
</div>
DOM - Selector Expressions
40
.append(content)
Insert content to last child of elements.
Ex: $(‘#main’).append(“<div>new</div>”)
<div id=‘main’>
<p>Hello</p>
<p>Hello2</p>
</div>
<div id=‘main’>
<p>Hello</p>
<p>Hello2</p>
<div>new</div>
</div>
DOM - Selector Expressions
41
.before(content)
Insert content before elements.
Ex: $(‘#main’).before(“<div>new</div>”)
<div id=‘main’>
<p>Hello</p>
<p>Hello2</p>
</div>
<div>new</div>
<div id=‘main’>
<p>Hello</p>
<p>Hello2</p>
</div>
DOM - Selector Expressions
42
.after(content)
Insert content after elements.
Ex: $(‘#main’).after(“<div>new</div>”)
<div id=‘main’>
<p>Hello</p>
<p>Hello2</p>
</div>
<div id=‘main’>
<p>Hello</p>
<p>Hello2</p>
</div>
<div>new</div>
DOM - Selector Expressions
43
.wrap(wrapElements)
Wrap an HTML structure around each element in the set of matched elements
Ex: $(‘.foo’).wrap(‘<div class=“wrap”></div>’)
<div class=‘foo’>Hello</div>
<div class=‘foo’>Hello</div>
<div class=‘wrap’>
<div class=‘foo’>Hello</div>
</div>
<div class=‘wrap’>
<div class=‘foo’>Hello</div>
</div>
DOM - Selector Expressions
44
.wrapAll(wrapElements)
Wrap an HTML structure around all elements in the set of matched elements
Ex: $(‘.foo’).wrapAll(‘<div class=“wrap”></div>’)
<div class=‘foo’>Hello</div>
<div class=‘foo’>Hello</div>
<div class=‘wrap’>
<div class=‘foo’>Hello</div>
<div class=‘foo’>Hello</div>
</div>
DOM - Selector Expressions
45
.wrapInner(wrapElements)
Wrap an HTML structure around the content of each element in the set of
matched elements
Ex: $(‘.foo’).wrapInner(‘<div class=“wrap”></div>’)
<div class=‘foo’>Hello</div>
<div class=‘foo’>Hello</div>
<div class=‘foo’>
<div class=‘wrap’>Hello</div>
</div>
<div class=‘foo’>
<div class=‘wrap’>Hello</div>
</div>
DOM - Selector Expressions
46
.clone()
.empty()
.remove()
jQuery Factory Method $()
47
You can also pass $() a function to run the function
after the page load.
$(function(){
//do something
});
This is essentially the same as..
$(document).ready(function(){
//do something
});
$().ready(function(){
//do something
});
Overview
1. Why choose jQuery?
48
2. Selectors
3. Attributes
4. Ajax
5. Events
6. Effects & Animation
7. Plugins
8. Q & A
Attributes
49
$(‘…’).attr(‘id’)
Get Set
$(‘…’).attr(‘id’,’new-id’)
.html() .html(‘<p>Hello</p>’)
.val() .val(‘new value’)
.css(‘color’) .css(‘color’,’#f30’)
.width() .width(100)
Attributes
50
$(‘…’).css({
color:’#f30’,
height: ‘200px’,
width: ’300px’,
border:’solid 1px #ccc’
}) ;
Set various css properties:
Overview
1. Why choose jQuery?
51
2. Selectors
3. Attributes
4. Ajax
5. Events
6. Effects & Animation
7. Plugins
8. Q & A
Ajax
52
$.ajax(settings)
$.get(url, params, callback)
$.post(url, params, callback)
$.getJSON(url, params, callback)
$.getScript(url, callback)
jQuery has excellent support for Ajax
$(‘#main’).load(‘ajax.html’)
More advanced methods include:
Ajax
53
$.ajax(settings):
$.ajax({
url: ‘/member/login’,
data: ,username:’abc’, pwd:’*****’-,
dataType: ‘json’,
success: function(msg){
alert(msg?’Login true’:’Login false’);
}
});
Overview
1. Why choose jQuery?
54
2. Selectors
3. Attributes
4. Ajax
5. Events
6. Effects & Animation
7. Plugins
8. Q & A
Events
.bind(eventType[, eventData], handler)
Attach a handler to an event for the elements.
55
Ex:
$('#foo').bind('click', {msg: ‘Hello event’-, function(event) {
alert(event.data.msg);
});
Multiples events:
$('#foo').bind('click, mouseover', {msg: ‘Hello event’-,
function(event) {
alert(event.data.msg);
});
Events
unbind([eventType[, handler]])
Remove a previously-attached event handler from the elements
56
Ex:
$('#foo').unbind('click');
$('#foo').unbind('click‘, function(),
alert(‘Event click removed’);
});
Events
.one(eventType[, eventData], handler)
Attach a handler to an event for the elements. The handler is executed at
most once.
57
$('#foo').one('click', function() {
alert('This will be displayed only once.');
});
$('#foo').bind('click', function(event) {
alert('This will be displayed only once.');
$(this).unbind(event);
});
Events
.trigger(eventType[, parameters])
Execute all handlers and behaviors attached to the matched elements for the
given event type.
58
$('#foo').bind('click', function(event) {
alert(‘Hello click event.');
});
$('#foo').trigger('click');
Events
59
$('#foo').bind(‘vmg-
event', function(event, param1, param2) {
alert(param1 + "n" + param2);
});
$('#foo').trigger(‘vmg-event', *‘value 1', ‘value 2'+);
Trigger custom event
Events
.live(eventType, handler)
Attach a handler to the event for all elements that match the current
selector, now or in the future.
60
$(function () {
$('.click').live('click', function () {
$('body').append('<div class="click">Another target</div>');
});
$('body').append('<div class="click">Another target</div>');
});
Not all event types are supported. Only custom events and the
following:
click, dblclick, keydown, keyup, keypress, mousedown, mousemove, m
ouseout, mouseover, mouseup, submit
Events
.hover(handlerIn, handlerOut)
61
.mouseup(handler), .mousedown(handler)
.mouseover(handler), .mouseout(handler)
.dblclick(handler)
.resize(handler)
.scroll(handler)
Overview
1. Why choose jQuery?
62
2. Selectors
3. Attributes
4. Ajax
5. Events
6. Effects & Animation
7. Plugins
8. Q & A
Effects & Animation
.show([duration][, callback])
63
.hide([duration][, callback])
.toggle([duration][, callback])
.slideDown([duration][, callback])
.slideUp ([duration][, callback])
.slideToggle([duration][, callback])
Effects & Animation
.fadeIn([duration][, callback])
64
.fadeOut([duration][, callback])
.fadeTo(duration, opacity[, callback])
Effects & Animation
.animate(properties, options)
65
.animate(properties[, duration][, easing][, callback])
$('#click').click(function() {
$('#photo').animate({
opacity: 0.25,
left: '+=50',
height: 'toggle'
}, 5000, function() {
alert('Animation complete.');
});
});
.stop()
Overview
1. Why choose jQuery?
66
2. Selectors
3. Attributes
4. Ajax
5. Events
6. Effects & Animation
7. Plugins
8. Q & A
Plugins
67
jQuery is extensible through plugins, which can
add new methods to the jQuery object
$.fn.externalLink=function(){
this.filter(function () {
return this.hostname &&
this.hostname !== location.hostname;
}).attr('target', '_blank');
};
$(‘a’).externalLink()
Q & A
68

More Related Content

PDF
jQuery Essentials
PDF
Stack Overflow Austin - jQuery for Developers
PDF
jQuery for beginners
PDF
jQuery Loves Developers - Oredev 2009
PPTX
Unobtrusive javascript with jQuery
PDF
Write Less Do More
PDF
jQuery Essentials
PDF
Learning jQuery made exciting in an interactive session by one of our team me...
jQuery Essentials
Stack Overflow Austin - jQuery for Developers
jQuery for beginners
jQuery Loves Developers - Oredev 2009
Unobtrusive javascript with jQuery
Write Less Do More
jQuery Essentials
Learning jQuery made exciting in an interactive session by one of our team me...

What's hot (20)

PDF
jQuery Features to Avoid
PPTX
Jquery-overview
PPT
ODP
Introduction to jQuery
PPTX
PPTX
jQuery Presentation
PPT
JQuery introduction
PPTX
jQuery Fundamentals
PDF
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
PPTX
jQuery from the very beginning
PDF
Prototype & jQuery
PDF
Learning jQuery in 30 minutes
PPTX
JQuery
PDF
jQuery in 15 minutes
PPTX
jQuery Presentasion
PDF
jQuery Basic API
ODP
Drupal Best Practices
PPTX
Fluentlenium
jQuery Features to Avoid
Jquery-overview
Introduction to jQuery
jQuery Presentation
JQuery introduction
jQuery Fundamentals
Zepto.js, a jQuery-compatible mobile JavaScript framework in 2K
jQuery from the very beginning
Prototype & jQuery
Learning jQuery in 30 minutes
JQuery
jQuery in 15 minutes
jQuery Presentasion
jQuery Basic API
Drupal Best Practices
Fluentlenium
Ad

Viewers also liked (6)

PPT
Taxonomy
PPTX
CLD1-8-AG
PPTX
The long distance runners (MG)
PPT
Presentacion Rieke Packaging
PPTX
Marketing with social media
Taxonomy
CLD1-8-AG
The long distance runners (MG)
Presentacion Rieke Packaging
Marketing with social media
Ad

Similar to jQuery quick tuts (20)

PPTX
Jquery Complete Presentation along with Javascript Basics
PDF
Introduction to jQuery
PDF
Advanced JQuery Mobile tutorial with Phonegap
PPTX
How to increase Performance of Web Application using JQuery
PPTX
jQuery basics for Beginners
PPTX
Unit3.pptx
PPTX
Jquery tutorial
PPTX
Introduction to jQuery - The basics
PPT
Kick start with j query
PPTX
JQuery_and_Ajax.pptx
PPTX
presentation_jquery_ppt.pptx
PPT
jQuery Fundamentals
PDF
Introduzione JQuery
PDF
Introduction to jQuery
PDF
PPTX
Web Development Course - JQuery by RSOLUTIONS
PPT
Jquery PPT_Finalfgfgdfgdr5tryeujkhdwappt
PDF
jQuery in the [Aol.] Enterprise
PPTX
Iniciando com jquery
Jquery Complete Presentation along with Javascript Basics
Introduction to jQuery
Advanced JQuery Mobile tutorial with Phonegap
How to increase Performance of Web Application using JQuery
jQuery basics for Beginners
Unit3.pptx
Jquery tutorial
Introduction to jQuery - The basics
Kick start with j query
JQuery_and_Ajax.pptx
presentation_jquery_ppt.pptx
jQuery Fundamentals
Introduzione JQuery
Introduction to jQuery
Web Development Course - JQuery by RSOLUTIONS
Jquery PPT_Finalfgfgdfgdr5tryeujkhdwappt
jQuery in the [Aol.] Enterprise
Iniciando com jquery

Recently uploaded (20)

PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PDF
Modernizing your data center with Dell and AMD
PPTX
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PDF
Diabetes mellitus diagnosis method based random forest with bat algorithm
PPTX
A Presentation on Artificial Intelligence
PPTX
20250228 LYD VKU AI Blended-Learning.pptx
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PDF
Spectral efficient network and resource selection model in 5G networks
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PDF
NewMind AI Weekly Chronicles - August'25 Week I
PDF
Empathic Computing: Creating Shared Understanding
PDF
KodekX | Application Modernization Development
Mobile App Security Testing_ A Comprehensive Guide.pdf
Modernizing your data center with Dell and AMD
Effective Security Operations Center (SOC) A Modern, Strategic, and Threat-In...
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Diabetes mellitus diagnosis method based random forest with bat algorithm
A Presentation on Artificial Intelligence
20250228 LYD VKU AI Blended-Learning.pptx
Digital-Transformation-Roadmap-for-Companies.pptx
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Spectral efficient network and resource selection model in 5G networks
Building Integrated photovoltaic BIPV_UPV.pdf
Network Security Unit 5.pdf for BCA BBA.
Encapsulation_ Review paper, used for researhc scholars
Reach Out and Touch Someone: Haptics and Empathic Computing
Advanced methodologies resolving dimensionality complications for autism neur...
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
NewMind AI Weekly Chronicles - August'25 Week I
Empathic Computing: Creating Shared Understanding
KodekX | Application Modernization Development

jQuery quick tuts

  • 1. jQuery Quick Tuts Mr. Huy – IT 1 S: nasavietnam Y: nasa8x E: nasavietnam@gmail.com
  • 2. Overview 1. Why choose jQuery? 2 2. Selectors 3. Attributes 4. Ajax 5. Events 6. Effects & Animation 7. Plugins 8. Q & A
  • 3. Why choose jQuery? 3 JavaScript Distribution in Top Million Sites http://trends.builtwith.com/javascript
  • 4. Why choose jQuery? 4 Led to World Domination http://www.google.com/trends/?q=dojo+javascript,+jquery+javascript,+yui+javascript,+prototype+javas cript,+mootools+javascript&ctab=0&geo=all&date=all&sort=1
  • 5. Why choose jQuery? 5 jQuery rescues us by working the same in all browsers!
  • 6. Why choose jQuery? 6 Easier to write jQuery than pure JavaScript With pure Javascript: var _divs=document.getElementByTagName(‘div’); for(var i=0;i<_divs.length;i++) { _divs[i].style.display=‘none’; } With jQuery: $(‘div’).hide();
  • 7. Why choose jQuery? 7 Benefits after the course?
  • 8. Overview 1. Why choose jQuery? 8 2. Selectors 3. Attributes 4. Ajax 5. Events 6. Effects & Animation 7. Plugins 8. Q & A
  • 9. Selectors 9 $(…) is a selector $(‘#id’) get element by id <html> <body> <div>jQuery examples</div> <div id="foo">example</div> </body> </html> <html> <body> <div>jQuery examples</div> <div id="foo">example</div> </body> </html>
  • 10. Selectors 10 $(‘.className’) get elements by class <html> <body> <div>jQuery examples</div> <div class="foo">example</div> <div class="foo">example</div> </body> </html> <html> <body> <div>jQuery examples</div> <div class="foo">example</div> <div class="foo">example</div> </body> </html>
  • 11. Selectors 11 $(‘div’) get elements by tag name <html> <body> <p>jQuery examples</p> <div class="foo">example</div> <div class="foo">example</div> </body> </html> <html> <body> <p>jQuery examples</p> <div class="foo">example</div> <div class="foo">example</div> </body> </html>
  • 12. Selectors 12 $(‘#foo > p’) get all elements by p that are children of a element #foo <html> <body> <p>jQuery examples</p> <div id="foo"> <p></p> <p></p> <div> <p></p> </div> </div> </body> </html> <html> <body> <p>jQuery examples</p> <div id="foo"> <p></p> <p></p> <div> <p></p> </div> </div> </body> </html>
  • 13. Selectors 13 $(‘#foo p’) get all elements by p that are descendants of a element #foo <html> <body> <p>jQuery examples</p> <div id="foo"> <p></p> <p></p> <div> <p></p> </div> </div> </body> </html> <html> <body> <p>jQuery examples</p> <div id="foo"> <p></p> <p></p> <div> <p></p> </div> </div> </body> </html>
  • 14. Selectors 14 $(‘a*href+’) Get all links with contains href attribute <html> <body> <p>jQuery examples</p> <a rel=“vmgmedia.vn”></a> <a href=“//vmgmedia.vn”></a> <div> <a href=“//vmgmedia.vn”></a> </div> </body> </html> <html> <body> <p>jQuery examples</p> <a rel=“vmgmedia.vn”></a> <a href=“//vmgmedia.vn”></a> <div> <a href=“//vmgmedia.vn”></a> </div> </body> </html>
  • 15. Selectors 15 $(‘a*rel=nofollow+’) Get all <a> elements that have a rel value exactly equal to nofollow <html> <body> <p>jQuery examples</p> <a rel=“nofollow”></a> <a href=“//vmgmedia.vn”></a> <a href=“//vmgmedia.vn” rel=“nofollow” ></a> </body> </html> <html> <body> <p>jQuery examples</p> <a rel=“nofollow”></a> <a href=“//vmgmedia.vn”></a> <a href=“//vmgmedia.vn” rel=“nofollow” ></a> </body> </html>
  • 16. Selectors 16 a[href^=https] Get all elements that have the href attribute with a value beginning exactly with the string https <html> <body> <p>jQuery examples</p> <a rel=“nofollow”></a> <a href=“//vmgmedia.vn”></a> <a href=“https://xyz.vn”></a> </body> </html> <html> <body> <p>jQuery examples</p> <a rel=“nofollow”></a> <a href=“//vmgmedia.vn”></a> <a href=“https://xyz.vn”></a> </body> </html>
  • 17. Selectors 17 a[href$=.zip] Get all elements that have the href attribute with a value ending exactly with the string .zip <html> <body> <p>jQuery examples</p> <a rel=“nofollow”></a> <a href=“//vmgmedia.vn”></a> <a href=“https://xyz.vn/file.zip”> </a> </body> </html> <html> <body> <p>jQuery examples</p> <a rel=“nofollow”></a> <a href=“//vmgmedia.vn”></a> <a href=“https://xyz.vn/file.zip”> </a> </body> </html>
  • 18. Selectors 18 a[href*=vmg] Get all elements that have the href attribute with a value containing the substring vmg <html> <body> <p>jQuery examples</p> <a rel=“nofollow”></a> <a href=“//vmgmedia.vn”></a> <a href=“https://xyz.vn/file.zip”> </a> </body> </html> <html> <body> <p>jQuery examples</p> <a rel=“nofollow”></a> <a href=“//vmgmedia.vn”></a> <a href=“https://xyz.vn/file.zip”> </a> </body> </html>
  • 19. Selectors 19 a[rel~=vmg] Get all elements that have the rel attribute with a value containing the word vmg, delimited by spaces <html> <body> <p>jQuery examples</p> <a rel=“nofollow vmg”></a> <a rel=“vmgmedia”></a> <a rel=“vmg”> </a> </body> </html> <html> <body> <p>jQuery examples</p> <a rel=“nofollow vmg”></a> <a rel=“vmgmedia”></a> <a rel=“vmg”> </a> </body> </html>
  • 20. Selectors 20 a[id|=vmg] Get all elements that have the id attribute with a value either equal to vmg, or beginning with vmg and a hyphen (-). <html> <body> <p>jQuery examples</p> <a id=“vmg-1”></a> <a id=“vmg-2”></a> <a id=“vmg”> </a> </body> </html> <html> <body> <p>jQuery examples</p> <a id=“vmg-1”></a> <a id=“vmg-2”></a> <a id=“vmg”> </a> </body> </html>
  • 21. Selectors 21 :first, :first-child Select first element in the list item. Ex: $(‘li:first’) <html> <body> <ul> <li></li> <li></li> <li></li> </ul> </body> </html> <html> <body> <ul> <li></li> <li></li> <li></li> </ul> </body> </html>
  • 22. Selectors 22 :parent Select all elements that are the parent of another element, including text nodes. Ex: $(‘li:parent’) <html> <body> <ul> <li> <a></a> </li> <li>&nbsp;</li> <li></li> </ul> </body> </html> <html> <body> <ul> <li> <a></a> </li> <li>&nbsp;</li> <li></li> </ul> </body> </html>
  • 23. Selectors 23 :contains(text) Selects all elements that contain the text text Ex: $(‘p:contains(vmg)’) <html> <body> <p>Vmg</p> <p>vmgmedia</p> <p>vmg</p> <p>VMG</p> </body> </html> <html> <body> <p>Vmg</p> <p>vmgmedia</p> <p>vmg</p> <p>VMG</p> </body> </html>
  • 24. Selectors 24 :has(E) Select all elements that contain an element matching E. Ex: $(‘li:has(a)’) <ul> <li></li> <li> <a></a> </li> <li></li> <li> <a></a> </li> </ul> <ul> <li></li> <li> <a></a> </li> <li></li> <li> <a></a> </li> </ul>
  • 25. Selectors 25 :not(E) Get all elements that do not match the selector expression E Ex: $(‘li:not(:last)’) <ul> <li></li> <li></li> <li></li> </ul> <ul> <li></li> <li></li> <li></li> </ul>
  • 26. Selectors 26 :hidden, : visible Select all elements that are hidden or visible :input, :text, :password, :radio, :submit, :checked, :selected… Select form elements $(‘#id, .class, div’) Multiple selectors in one
  • 27. DOM - Selector Expressions 27 DOM: Document Model Object New jQuery object in the DOM: - $(object) - $(html) - $(selector[,context]) - $(element) - $(elementsCollection)
  • 28. DOM - Selector Expressions 28 Selector Context $(‘#foo').click(function() { $('span', this).addClass(‘highlight'); });
  • 29. DOM - Selector Expressions 29 DOM Element $(‘#foo').click(function() { $(this).addClass(‘highlight'); }); Cloning jQuery Objects $(‘<div><p></p></div>’).appendTo(“body”)
  • 30. DOM - Selector Expressions 30 .filter() Reduce the set of matched elements to those that match the selector or pass the function’s test. Ex: $(‘li’).filter(‘:last’) <ul> <li></li> <li></li> <li></li> </ul> <ul> <li></li> <li></li> <li></li> </ul> .filter(selector) .filter(function)
  • 31. DOM - Selector Expressions 31 .eq(n) Get one element at the specified index. Ex: $(‘li’).eq(1) <ul> <li></li> <li></li> <li></li> </ul> <ul> <li></li> <li></li> <li></li> </ul>
  • 32. DOM - Selector Expressions 32 .slice(start[,end]) Get elements to a subset specified by a range of indices Ex: $(‘li’).slice(1,3) <ul> <li></li> <li></li> <li></li> <li></li> </ul> <ul> <li></li> <li></li> <li></li> <li></li> </ul>
  • 33. Selectors 33 .children([selector]) Get the children of each element in the set of matched elements, optionally filtered by a selector. Ex: $(‘li.foo’).children() <ul> <li class=‘foo’> <ul> <li></li> <li></li> </ul> </li> <li></li> </ul> <ul> <li class=‘foo’> <ul> <li></li> <li></li> </ul> </li> <li></li> </ul>
  • 34. Selectors 34 .parents([selector]) Get the ancestors of each element in the current set of matched elements, optionally filtered by a selector. <div class=‘foo’></div> <div class=‘foo’></div> <div class=‘foo’> <a id=‘click’></a> </div> <div class=‘foo’></div> $(‘#click’).bind(‘click’, functi on(){ $(this).parents(‘.foo’). addClass(‘highlight’) })
  • 35. DOM - Selector Expressions 35 .parent([selector]) Get the parent of each element in the current set of matched elements, optionally filtered by a selector. Ex: $(‘#click’).parent() <div> <ul class=‘foo’> <li> <a class=‘click’></a> </li> </ul> </div> <div> <ul class=‘foo’> <li> <a class=‘click’></a> </li> </ul> </div>
  • 36. DOM - Selector Expressions 36 .is(selector) Return true if at least one of these elements matches the selector .hasClass(className) Return true if elements exist className .addClass(className)/.removeClass(className) Add/remove class of element(s)
  • 37. DOM - Selector Expressions 37 .replaceWith(newContent) Replace each element by newContent. Ex: $(‘#main’).replaceWidth(‘<p>new content</p>’) <div> <div id=‘main’> </div> </div> <div> <p>new content</p> </div>
  • 38. DOM - Selector Expressions 38 .replaceAll(target) Replace each target element with the set of matched elements. Ex: $(‘#main’).replaceAll($(‘.target’)) <div id=‘main’>Hello</div> <div class=‘target’> Hello 2 </div> <div class=‘target’> Hello 2 </div> <div id=‘main’>Hello</div> <div id=‘main’>Hello</div>
  • 39. DOM - Selector Expressions 39 .prepend(content) Insert content to fisrt child of elements. Ex: $(‘#main’).prepend(“<div>new</div>”) <div id=‘main’> <p>Hello</p> <p>Hello2</p> </div> <div id=‘main’> <div> new</div> <p>Hello</p> <p>Hello2</p> </div>
  • 40. DOM - Selector Expressions 40 .append(content) Insert content to last child of elements. Ex: $(‘#main’).append(“<div>new</div>”) <div id=‘main’> <p>Hello</p> <p>Hello2</p> </div> <div id=‘main’> <p>Hello</p> <p>Hello2</p> <div>new</div> </div>
  • 41. DOM - Selector Expressions 41 .before(content) Insert content before elements. Ex: $(‘#main’).before(“<div>new</div>”) <div id=‘main’> <p>Hello</p> <p>Hello2</p> </div> <div>new</div> <div id=‘main’> <p>Hello</p> <p>Hello2</p> </div>
  • 42. DOM - Selector Expressions 42 .after(content) Insert content after elements. Ex: $(‘#main’).after(“<div>new</div>”) <div id=‘main’> <p>Hello</p> <p>Hello2</p> </div> <div id=‘main’> <p>Hello</p> <p>Hello2</p> </div> <div>new</div>
  • 43. DOM - Selector Expressions 43 .wrap(wrapElements) Wrap an HTML structure around each element in the set of matched elements Ex: $(‘.foo’).wrap(‘<div class=“wrap”></div>’) <div class=‘foo’>Hello</div> <div class=‘foo’>Hello</div> <div class=‘wrap’> <div class=‘foo’>Hello</div> </div> <div class=‘wrap’> <div class=‘foo’>Hello</div> </div>
  • 44. DOM - Selector Expressions 44 .wrapAll(wrapElements) Wrap an HTML structure around all elements in the set of matched elements Ex: $(‘.foo’).wrapAll(‘<div class=“wrap”></div>’) <div class=‘foo’>Hello</div> <div class=‘foo’>Hello</div> <div class=‘wrap’> <div class=‘foo’>Hello</div> <div class=‘foo’>Hello</div> </div>
  • 45. DOM - Selector Expressions 45 .wrapInner(wrapElements) Wrap an HTML structure around the content of each element in the set of matched elements Ex: $(‘.foo’).wrapInner(‘<div class=“wrap”></div>’) <div class=‘foo’>Hello</div> <div class=‘foo’>Hello</div> <div class=‘foo’> <div class=‘wrap’>Hello</div> </div> <div class=‘foo’> <div class=‘wrap’>Hello</div> </div>
  • 46. DOM - Selector Expressions 46 .clone() .empty() .remove()
  • 47. jQuery Factory Method $() 47 You can also pass $() a function to run the function after the page load. $(function(){ //do something }); This is essentially the same as.. $(document).ready(function(){ //do something }); $().ready(function(){ //do something });
  • 48. Overview 1. Why choose jQuery? 48 2. Selectors 3. Attributes 4. Ajax 5. Events 6. Effects & Animation 7. Plugins 8. Q & A
  • 49. Attributes 49 $(‘…’).attr(‘id’) Get Set $(‘…’).attr(‘id’,’new-id’) .html() .html(‘<p>Hello</p>’) .val() .val(‘new value’) .css(‘color’) .css(‘color’,’#f30’) .width() .width(100)
  • 51. Overview 1. Why choose jQuery? 51 2. Selectors 3. Attributes 4. Ajax 5. Events 6. Effects & Animation 7. Plugins 8. Q & A
  • 52. Ajax 52 $.ajax(settings) $.get(url, params, callback) $.post(url, params, callback) $.getJSON(url, params, callback) $.getScript(url, callback) jQuery has excellent support for Ajax $(‘#main’).load(‘ajax.html’) More advanced methods include:
  • 53. Ajax 53 $.ajax(settings): $.ajax({ url: ‘/member/login’, data: ,username:’abc’, pwd:’*****’-, dataType: ‘json’, success: function(msg){ alert(msg?’Login true’:’Login false’); } });
  • 54. Overview 1. Why choose jQuery? 54 2. Selectors 3. Attributes 4. Ajax 5. Events 6. Effects & Animation 7. Plugins 8. Q & A
  • 55. Events .bind(eventType[, eventData], handler) Attach a handler to an event for the elements. 55 Ex: $('#foo').bind('click', {msg: ‘Hello event’-, function(event) { alert(event.data.msg); }); Multiples events: $('#foo').bind('click, mouseover', {msg: ‘Hello event’-, function(event) { alert(event.data.msg); });
  • 56. Events unbind([eventType[, handler]]) Remove a previously-attached event handler from the elements 56 Ex: $('#foo').unbind('click'); $('#foo').unbind('click‘, function(), alert(‘Event click removed’); });
  • 57. Events .one(eventType[, eventData], handler) Attach a handler to an event for the elements. The handler is executed at most once. 57 $('#foo').one('click', function() { alert('This will be displayed only once.'); }); $('#foo').bind('click', function(event) { alert('This will be displayed only once.'); $(this).unbind(event); });
  • 58. Events .trigger(eventType[, parameters]) Execute all handlers and behaviors attached to the matched elements for the given event type. 58 $('#foo').bind('click', function(event) { alert(‘Hello click event.'); }); $('#foo').trigger('click');
  • 59. Events 59 $('#foo').bind(‘vmg- event', function(event, param1, param2) { alert(param1 + "n" + param2); }); $('#foo').trigger(‘vmg-event', *‘value 1', ‘value 2'+); Trigger custom event
  • 60. Events .live(eventType, handler) Attach a handler to the event for all elements that match the current selector, now or in the future. 60 $(function () { $('.click').live('click', function () { $('body').append('<div class="click">Another target</div>'); }); $('body').append('<div class="click">Another target</div>'); }); Not all event types are supported. Only custom events and the following: click, dblclick, keydown, keyup, keypress, mousedown, mousemove, m ouseout, mouseover, mouseup, submit
  • 61. Events .hover(handlerIn, handlerOut) 61 .mouseup(handler), .mousedown(handler) .mouseover(handler), .mouseout(handler) .dblclick(handler) .resize(handler) .scroll(handler)
  • 62. Overview 1. Why choose jQuery? 62 2. Selectors 3. Attributes 4. Ajax 5. Events 6. Effects & Animation 7. Plugins 8. Q & A
  • 63. Effects & Animation .show([duration][, callback]) 63 .hide([duration][, callback]) .toggle([duration][, callback]) .slideDown([duration][, callback]) .slideUp ([duration][, callback]) .slideToggle([duration][, callback])
  • 64. Effects & Animation .fadeIn([duration][, callback]) 64 .fadeOut([duration][, callback]) .fadeTo(duration, opacity[, callback])
  • 65. Effects & Animation .animate(properties, options) 65 .animate(properties[, duration][, easing][, callback]) $('#click').click(function() { $('#photo').animate({ opacity: 0.25, left: '+=50', height: 'toggle' }, 5000, function() { alert('Animation complete.'); }); }); .stop()
  • 66. Overview 1. Why choose jQuery? 66 2. Selectors 3. Attributes 4. Ajax 5. Events 6. Effects & Animation 7. Plugins 8. Q & A
  • 67. Plugins 67 jQuery is extensible through plugins, which can add new methods to the jQuery object $.fn.externalLink=function(){ this.filter(function () { return this.hostname && this.hostname !== location.hostname; }).attr('target', '_blank'); }; $(‘a’).externalLink()

Editor's Notes

  • #5: jQuery Framework đangtrởlênđượcưachuộng, cộngđồngngàycànglớnvàthốngtrịthếgiới