04. Modifying text & attributes fields

Let's now talk about accessing and updating text nodes and attribute fields.

Accessing and updating text nodes

First we must select the element that contains the particular text node we want to edit. We can store its reference into a variable, and use the firstChild property to access its text element. Any text within any of our element's children will not be included.


The text of the text node can be accessed using its only property, nodeValue. Through this variable, we may access or update the text node.

var item = querySelector('li');
itemText = item.firstChild;

The nodeValue property simply returns the content of the node.


Another approach is the use innerHTML, which obtains all the text and markup inside of an element. This will access all child elements and the text content within. innerHTML should not be used, as it is not considered a standard by the W3C.


The standard way to accessing text is through the textContent variable.

Setting this node will remove all child elements within, and replace it with the given text.

Using textContent is more powerful than innerHTML, since HTML elements are not parsed; this allows you to to write HTML character within an element.

Accessing and updating attributes

As you should recall, attributes are the properties given to an HTML element. For example, the anchor tag (<a href=""></a>) should always have an href attribute. Let's now look at the methods that are used to access, modify and update these attributes.

True if the element contains the attribute a, otherwise False.
Return value of the attribute a.
setAttribute(a, b)
Set the attribute value a to b.
Removes the a attribute from the element.

Build modern and responsive webpages

Responsive Typography

Build modern and responsive webpages Try Front-end

Responsive web design helps your site maintain its design integrity on a variety of screen sizes, but how does it affect your typography? With this practical book, graphic designers, web designers, and front-end developers alike will learn the nuts and bolts of how to get the best appearance from type without sacrificing performance on any device.

$ Check price
24.9924.99Amazon 4.5 logo(3+ reviews)

More Front-end resources

Aching back from coding all day?

Inversion Therapy Table

Aching back from coding all day? Try Back Problems

Stretch out your back and relieve your back muscles with inversion therapy. This device counteracts the forces of gravity on the body by decompressing and elongating the spine. By using this product just ten minutes a day, you can be well on your way to improved circulation and posture while relieving muscle aches, back pain and stress.

$$ Check price
119.98119.98Amazon 4.5 logo(1,700+ reviews)

More Back Problems resources