JavaScript JavaScript and the DOM Getting a Handle on the DOM Practice Selecting Elements

Jacek Smoroński
Jacek Smoroński
1,808 Points

What is the correct solution?

Could you answer me, what is the correct code?

Many thanks,

js/app.js
let navigationLinks= document.querySelectorAll("nav");
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">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>&copy; 2016 Nick Pettit.</p>
      </footer>
    </div>
  <script src="js/app.js"></script>
  </body>
</html>

2 Answers

Steven Parker
Steven Parker
163,416 Points

The instructions ask you to "select all links inside the <nav> element" They also give you this good hint: "Use a descendant selector ...".

A "descendant selector" is a combination of a selector for a container followed by the selector for the actual target, separated by a space. And remember that links are implemented using anchor (a) elements.

I'll bet you can get it now. :wink:

Jacek Smoroński
Jacek Smoroński
1,808 Points

Sorry, but It's still unclear for me. I tried before let navigationLinks= document.querySelectorAll("nav li"); but It's uncorrect too :/

Jacek Smoroński
Jacek Smoroński
1,808 Points

I've got It. better late than never :D

thanks.

Steven Parker
Steven Parker
163,416 Points

Good deal. Yes, links are "a". An "li" is a list item. :wink: