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 Modifying Elements

James Blazer
James Blazer
3,836 Points

Tried many different ways of coding this but I can't get it to pass getElementById

I can't get this to pass. What am I doing wrong?

app.js
let inputValue = document.getElementById('linkName');

linkName.addEventListener('click', () => {
 link.style.color = inputValue.value;
});
index.html
<!DOCTYPE html>
<html>
    <head>
        <title>DOM Manipulation</title>
    </head>
    <link rel="stylesheet" href="style.css" />
    <body>
        <div id="content">
            <label>Link Name:</label>
            <input type="text" id="linkName">
            <a id="link" href="https://teamtreehouse.com"></a>
        </div>
        <script src="app.js"></script>
    </body>
</html>
James Blazer
James Blazer
3,836 Points

I went back and re-watched the videos again and again and I figured it out. I don't know how to delete this question.

1 Answer

Antonio De Rose
Antonio De Rose
20,885 Points
linkName.addEventListener('click', () => {
 link.style.color = inputValue.value;
});

//why have you added an eventlistener
//the question never asked

//question

/*
Set the text content of the a tag to be the value stored in the variable inputValue.
*/

//simply it is asking the textContent attribute of the a tag to have the value
//which is inside linkname variable 

//can you think of something like getElementById
//document.getElementsByClassName
//document.getElementsByTagName
//docuement.querySelector
//outta above, what would best fit, and what would be the attribute name to set text content

document.xxxxxxxxxxx('xxxxxxx').correctattributename = linkName;

//note - getElementsByClassName and getElementsByTagName returns an Array
//so work it out accordingly
James Blazer
James Blazer
3,836 Points

Hi, Antonio, Thanks for the reply. I went back and watched the videos again and figured it out. I do appreciate your reply. Thanks!