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 trialryan plunkett
3,500 PointsSelecting various elements by class name? Where did I go wrong?
//In the following tasks you'll be required to select various elements on the index.html page.
//In the app.js file on line 1, select all links in the nav element and assign them to navigationLinks.
// in index.html it shows...
<nav> <ul> <li><a href="index.html" class="selected">Portfolio</a></li> <li><a href="about.html">About</a></li> <li><a href="contact.html">Contact</a></li> </ul> </nav>
//So my answer was...
let navigationLinks = document.getElementsByTagName('nav');
//Its telling me it only selected 1 element when it was expecting 3...
let navigationLinks = document.getElementsByTagName('nav');
let galleryLinks;
let footerImages;
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Nick Pettit | Designer</title>
<link rel="stylesheet" href="css/normalize.css">
<link href='http://fonts.googleapis.com/css?family=Changa+One|Open+Sans:400italic,700italic,400,700,800' rel='stylesheet' type='text/css'>
<link rel="stylesheet" href="css/main.css">
<link rel="stylesheet" href="css/responsive.css">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
</head>
<body>
<header>
<a href="index.html" id="logo">
<h1>Nick Pettit</h1>
<h2>Designer</h2>
</a>
<nav>
<ul>
<li><a href="index.html" class="selected">Portfolio</a></li>
<li><a href="about.html">About</a></li>
<li><a href="contact.html">Contact</a></li>
</ul>
</nav>
</header>
<div id="wrapper">
<section>
<ul id="gallery">
<li>
<a href="img/numbers-01.jpg">
<img src="img/numbers-01.jpg" alt="">
<p>Experimentation with color and texture.</p>
</a>
</li>
<li>
<a href="img/numbers-02.jpg">
<img src="img/numbers-02.jpg" alt="">
<p>Playing with blending modes in Photoshop.</p>
</a>
</li>
</ul>
</section>
<footer>
<a href="http://twitter.com/nickrp"><img src="img/twitter-wrap.png" alt="Twitter Logo" class="social-icon"></a>
<a href="http://facebook.com/nickpettit"><img src="img/facebook-wrap.png" alt="Facebook Logo" class="social-icon"></a>
<p>© 2016 Nick Pettit.</p>
</footer>
</div>
<script src="js/app.js"></script>
</body>
</html>
2 Answers
Jennifer Nordell
Treehouse TeacherHi there! The challenge is asking you to select all links inside the nav
element. But your code simply selects all the nav
elements. Take a look at the HTML. There is only one nav
element present.
So you need to select the links inside that element (of which there are 3). Remember, we use the anchor tag to make a link or <a>
. So, instead of selecting 'nav'
, try selecting 'nav a'
.
Hope this helps!
ryan plunkett
3,500 PointsThank you, It didnt work with document.getElementsByTagName(('nav a'); but it did work with document.querySelectorAll('nav a');
Jennifer Nordell
Treehouse TeacherJennifer Nordell
Treehouse TeacherWoops! You are correct. You should use a
document.querySelectorAll('nav a')
which will return all the links inside thenav
element. I forgot to mention that bit