Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript JavaScript and the DOM (Retiring) Making Changes to the DOM DOM Manipulation

Joshua Rarick
seal-mask
.a{fill-rule:evenodd;}techdegree seal-36
Joshua Rarick
Front End Web Development Techdegree Graduate 30,970 Points

DOM manipulation Task 2 of 3. What am I doing wrong?

The challenge says to set the class 'panel' to variable. I don't see what's wrong with this code.

app.js
const contentDiv = document.getElementById("content");
let newParagraph = document.createElement('p').className.add('panel');
index.html
<!DOCTYPE html>
<html>
    <head>
        <title>DOM Manipulation</title>
    </head>
    <link rel="stylesheet" href="style.css" />
    <body>
        <div id="content">

        </div>
        <script src="app.js"></script>
    </body>
</html>

2 Answers

Tim Strand
Tim Strand
22,458 Points

Class name doesnt have an add function. either you want classList or className = panel https://www.w3schools.com/jsref/prop_html_classname.asp

Definition and Usage The className property sets or returns the class name of an element (the value of an element's class attribute).

Tip: A similar property to className is the classList property.

Rohald van Merode
seal-mask
STAFF
.a{fill-rule:evenodd;}techdegree seal-36
Rohald van Merode
Treehouse Staff

This worked for me

const contentDiv = document.getElementById("content");
let newParagraph = document.createElement('p');

newParagraph.className = "panel";