[go: up one dir, main page]

0% found this document useful (0 votes)
25 views12 pages

Chapter 12 Lesson 1 PDF

Uploaded by

Nthabie Lebusa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views12 pages

Chapter 12 Lesson 1 PDF

Uploaded by

Nthabie Lebusa
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 12

ICT1512

Chapter 12
Lesson 1

Getting Started with


jQuery
Working with jQuery
Selectors
Handlin Events with
jQuery
Objectives
• You will have mastered the material in this lesson
when you can:
– Use the jQuery library to apply jQuery methods to a
selection of elements.
– Modify the contents and structure of the DOM using
jQuery.
– Manage browser events using jQuery.
Getting Started with jQuery
• jQuery is a highly successful, free JavaScript library (organized
collection of JavaScript code) that was originally developed to
facilitate cross-browser compatibility
• jQuery's core features:
– Easier DOM navigation and manipulation
– Tools for event management
– Animation effects
– Widgets such as photo slideshows, calendars, and web form controls
– Easier AJAX request creation and response handling
• Collections of third-party jQuery plugins for front-end development
are also available
• Versions of jQuery
– Has gone through several releases since its initial release in August 2006
– Current version is 3.6.0
Loading jQuery
• Accessible as either a .js file downloaded to your website
or a file residing on a Content Delivery Network (CDN)
– Using a CDN is the best practice unless your app needs to work
offline
• jQuery recommends that links to the CDN include
subresource integrity checking (SRI)
• jQuery library versions:
– Uncompressed or minified (for faster performance)
– Normal jQuery build (full features of the library) or slim jQuery
build (lacks features such as AJAX and some animation tools)
Is jQuery Still Relevant?
• Many features have been supplanted by JavaScript, CSS, or
the Fetch API
• Important to be familiar with it because it is still widely used in
top websites
Working with jQuery Selectors
• General syntax for jQuery commands:
$(selector).action(parameters)
– selector references a selection of elements from the web page document
– action is an action performed on that selection
– parameters are parameter values associated with that action, such as
functions
• Sample code to apply the ready() action to the web document
when it is loaded and read:
$(document).ready(function() {
jQuery statements
})

or (with later versions of jQuery):


$(function() {
jQuery statements
});
Selecting Elements from the DOM
• The jQuery $(selector) expression references a selection of
elements based on CSS selector patterns
• Sample expressions:
– $("dd > p") returns an array of all paragraphs nested as direct children of
the dd element
– $("dd > p, dt > p") returns paragraphs that are direct children of a dt
or dd element
– $("article.story p") selects all paragraphs nested within article
elements belonging to the story class
– $("article.story p")[0] selects the first paragraph within an article
element because the selected elements can be treated as items within an
array
– jQuery selectors can be saved as variables, e.g.:
let mainPara = $("h1#main p");
$(mainPara) // references paragraphs of the main h1
heading
• The variable is placed with the $() expression so it's treated as a jQuery selector
Optimizing jQuery selectors
• The fastest way to retrieve a specific element is by its id value
• Be specific in selectors to limit the search
• Include a context for selectors to reduce the size of the node tree to
search
• Cache selectors by storing them within variables
• Avoid pseudo-selectors; use id attributes to reference specific
nodes instead
Traversing the DOM with jQuery

• jQuery methods enable navigation of the node tree from parent


elements and through sibling and child elements
• Sample expression that returns an array of all sibling elements of
the main article that are themselves articles:
$("article#main").siblings("article")
• Sample use of object chaining (appending the selector with jQuery
methods that extend or redirect the selected elements) to include
only sibling articles with unordered lists:
$("article#main").siblings("article").has("ul")
Working with Attributes and CSS Properties
• jQuery methods for working with element attributes and CSS properties allow you to
narrow a search based on element or CSS property values or to create new attributes and
CSSS properties
• Sample expression to retrieve the value of the width attribute for the first inline image of
the slides class:
$("img.slides").first().attr("width")
• Sample expression to set the width to 500 pixels:
$("img.slides").first().attr("width", "500px")
• Sample expression to set the width and height using attributes in JSON format:
$("img.slides").first().({"width": "500px", "height": "300px"})
• Sample expression to set the color and font size of the main h1 heading:
$("h1#main").css({
fontSize: "2em",
color: "blue"
})
• jQuery returns the computed values of CSS styles, whereas the style sheet may contain
values defined in other units
• E.g., 2 em and green from CSS become 32 pixels and RGB values 0, 128, and 0 when
returned by jQuery
Changing the DOM Structure
• jQuery methods can be used to edit, replace, or add DOM elements
• jQuery methods can act as both getters (methods that get values)
and setters (methods that set values)
– Sample getter: $("input#username").val()
– Sample setter: $("input#username".val("dawson4815")
– Sample jQuery statement to change heading styles in an HTML fragment:
$("<h2 class='new'>Minor Heading</h2>").replaceAll("h1.old");

– The wrap() method encloses elements within a specified HTML


structure, creating a new parent for the elements, e.g.:
$("h1.story").wrap("<article></article>")

– The unwrap() method can be used afterward to restore the original


structure, e.g.:
$("h1.story").unwrap()
Handling Events with jQuery
• General syntax for managing events with jQuery, where handler is
the function that handles the event:
$(selector).event(handler)
– jQuery responds to events during the bubbling phase only
• jQuery supports an event object that is passed as an object of the
handler function
• Sample code that applies the click() event to every h1 element in
the document to display the text of the element that follows the
heading:
$("h1").click(e => {
console.log($(e.target).next().text());
});
– The heading clicked is stored in the e.target property, the next() method
selects the next sibling element, and the text() method displays the text
stored within that sibling
– The event object property must be placed within the jQuery selector so that
jQuery handles the associated methods

You might also like