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) Getting a Handle on the DOM Practice Selecting Elements

Abdul Azeez
Abdul Azeez
3,884 Points

cant pass the code challange, tried my best

i gave the first link a class name ; "lastTry" so i could get the links in the nav tags to be stored in navigationLinks variable but all efforts and methods have failed me.....

js/app.js
let navigationLinks = document.getElementsByClassName("lastTry");
let galleryLinks;
let footerImages;
index.html
<!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 lastTry">Portfolio</a></li>
          <li><a href="about.html"  class="lastTry">About</a></li>
          <li><a href="contact.html"  class="lastTry">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>&copy; 2016 Nick Pettit.</p>
      </footer>
    </div>
  <script src="js/app.js"></script>
  </body>
</html>

2 Answers

Steven Parker
Steven Parker
229,744 Points

The challenge should probably mention that the HTML code is provided only for inspection, you should not make any changes to it (and any you do will be ignored).

The whole point of the exercise is to make selections based on what is already there. In the case of the first task, you could use the "querySelectorAll" method which accepts complex CSS-style selectors. Then you could give it a descendant selector where you name both the parent and the target with a space between.

Hi Abdul Azeez!

You can select all the links from the <nav> bar by using querySelectorAll('nav a'). There is no need to add the class lastTry to all the links in the <nav> element in the HTML file. Just remember that we need to specify where is the element that we want to select. In this case, we want to select the a elemens in the <nav> tag.

Try this:

let navigationLinks = document.querySelectorAll('nav a');