JavaScript JavaScript and the DOM Traversing the DOM Sibling Traversal



var list = document.getElementsByTagName('ul')[0];

list.addEventListener('click', function(event) {
  if ( == 'BUTTON') {
    let p =;
    let button = p.parentNode;

<!DOCTYPE html>
        <title>JavaScript and the DOM</title>
    <link rel="stylesheet" href="style.css" />
            <h1>Making a Webpage Interactive</h1>
            <p>Things to Learn</p>
                <li><p>Element Selection</p><button>Highlight</button></li>
                <li><p>Event Listening</p><button>Highlight</button></li>
                <li><p>DOM Traversal</p><button>Highlight</button></li>
        <script src="app.js"></script>

1 Answer

Steven Parker
Steven Parker
195,560 Points

You're getting close, but:

  • you should not modify the provided code (leave the parameter name as "e")
  • the property "previousELementSibling" should be spelled "previousElementSibling" (with lower-case "l")
  • you won't need to assign "button" or reference the parent node (the button isn't the parent anyway)
  • you still need to set the class name on the paragraph to "highlight"