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

Daniel Gibson
Daniel Gibson
Full Stack JavaScript Techdegree Graduate 15,904 Points

How to select all <li> tags under <nav> element? document.getElementsByTagName("nav" > "ul" > "li"); - Doesn't work

The answer to this task is can't be found in any of the videos. How do I select all <li> tags under the <nav> element?

let navigationLinks = document.getElementsByTagName("nav" > "ul" > "li");
let galleryLinks;
let footerImages;
<!DOCTYPE html>
    <meta charset="utf-8">
    <title>Nick Pettit | Designer</title>
    <link rel="stylesheet" href="css/normalize.css">
    <link href='|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">
      <a href="index.html" id="logo">
        <h1>Nick Pettit</h1>
          <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>
    <div id="wrapper">
        <ul id="gallery">
            <a href="img/numbers-01.jpg">
              <img src="img/numbers-01.jpg" alt="">
              <p>Experimentation with color and texture.</p>
            <a href="img/numbers-02.jpg">
              <img src="img/numbers-02.jpg" alt="">
              <p>Playing with blending modes in Photoshop.</p>
        <a href=""><img src="img/twitter-wrap.png" alt="Twitter Logo" class="social-icon"></a>
        <a href=""><img src="img/facebook-wrap.png" alt="Facebook Logo" class="social-icon"></a>
        <p>&copy; 2016 Nick Pettit.</p>
  <script src="js/app.js"></script>

1 Answer

Michael Hulet
Michael Hulet
Treehouse Moderator 46,831 Points

document.getElementsByTagName expects a single tag name as a string, like "nav" or "li". In this case, it'd probably be easiest to use document.querySelectorAll, which takes a CSS selector as a string. It seems like the CSS selector you're looking for here is a simple space, which selects all elements of a certain type which are nested within a different type. For example, to get all a elements within a div, the proper selector would be div a