Altering Document Structure
In Getting and Setting Element Content we saw the html()
and text()
methods for setting element content.
This section covers methods for making more complex changes to a
document. Because HTML documents are represented as a tree of nodes
rather than a linear sequence of characters, insertions, deletions,
and replacements are not as simple as they are for strings and arrays.
The subsections that follow explain the various jQuery methods for
document modification.
Inserting and Replacing Elements
Let’s begin with basic methods for insertions and
replacements. Each of the methods demonstrated below takes an
argument that specifies the content that is to be inserted into the
document. This can be a string of plain text or of HTML to specify
new content, or it can be a jQuery object or an Element or text
Node. The insertion is made into or before or after or in place of
(depending on the method) each of the selected elements. If the
content to be inserted is an element that already exists in the
document, it is moved from its current location. If it is to be
inserted more than once, the element is cloned as necessary. These
methods all return the jQuery object on which they are called. Note,
however, that after replaceWith()
runs, the elements in the jQuery object are no longer in the
document:
$
(
"#log"
).
append
(
"<br/>"
+
message
);
// Add content at end of the #log element
$
(
"h1"
).
prepend
(
"§"
);
// Add section sign at start of each <h1>
$
(
"h1"
).
before
(
"<hr/>"
);
Get JavaScript: The Definitive Guide, 6th Edition now with the O’Reilly learning platform.
O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.