# Unit 2: Intro to DOM Manipulation Basics

- [Unit 2 Overview](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/unit-2-overview.md): How can I create a more interactive webpage using Javascript?
- [U2LA1: JavaScript Essentials - Variables to Arrow Functions](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/u2la1-javascript-essentials-variables-to-arrow-functions.md): How can I store and manipulate data to later be used in various ways throughout my website?
- [U2LA1 Mini Project: JavaScript Essentials](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/u2la1-mini-project-javascript-essentials.md): How can I store and manipulate data to later be used in various ways throughout my website?
- [U2LA2.1: DOM Manipulation with JavaScript Click Interactions](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/u2la2.1-dom-manipulation-with-javascript-click-interactions.md): How can JavaScript help me make my websites interactive?
- [U2LA2.2: Accessible Shopping Cart](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/untitled.md): How can I make it easier for someone using a screen reader to interact through a webpage?
- [U2LA2 Mini Project: The National Horse Race](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/u2la2-mini-project-the-national-horse-race.md): How do you change a webpage based on clicked buttons?
- [U2LA3: Inputs and Conditionals](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/u2la3-inputs-and-conditionals.md): How can I make changes to a page based on an input?
- [U2LA3 Mini Project: The Interactive Site](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/u2la3-mini-project-the-interactive-site.md): What are ways you can change a webpage based on other inputs while maintaining accessibility?
- [U2LA4: Add, Remove, and Toggle](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/u2la4-add-remove-and-toggle.md): How can I change the classes an element has as I interact with the page?
- [U2LA4 Mini Project: The Cross-Wired Lightbulbs Puzzle](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/u2la4-mini-project-the-cross-wired-lightbulbs-puzzle.md): How can you use add, remove, and toggle in Javascript to change an element's classList and other attributes in HTML?
- [Unit 2 Final Project: Input-Output Helper Site](https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics/unit-2-final-project-input-output-helper-site.md): How can you use Javascript to create seamless interaction on a webpage?


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://cs4all-icm.gitbook.io/js-the-interactive-web/unit-2-intro-to-dom-manipulation-basics.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
