JavaScript and the DOM (Udacity)

Offered by Udacity,
JavaScript and the DOM (Udacity)

Dynamically control the browser. JavaScript is an extremely powerful programming language. One place where its power truly shines is using it to control a web page. Through this course, you'll learn about the Document Object Model (DOM), how it's created, and what capabilities it provides. Then you'll use JavaScript and the DOM to add, delete, or alter page content; control page styling, and respond to user actions.

Class Deals by MOOC List - Click here and see Udacity's Active Discounts, Deals, and Promo Codes.

HTML provides the structure for a site. CSS provides the styling. JavaScript (and the DOM) provides the interactivity for a site. Without JavaScript and the DOM, a site is static. The web is alive and shouldn't be shackled by a non-interactive page!
Are you interested in learning how to programmatically add new content to a page? Do you want to dynamically change the styling of an element, respond to a form submission by displaying a message to the user, or learn how to measure the performance of your code? If you said, "Yes!" to any of these, then this course is for you!

What you will learn

  • The Document Object Model
  • Learn how the DOM is constructed
  • Use DOM methods to select page elements
  • Figure out where an Element's properties come from
  • Creating Content with JavaScript
  • Use DOM and JavaScript to add new content to the page
  • Learn DOM and JavaScript to remove page content
  • Use DOM and JavaScript to style page elements
  • Working with Browser Events
  • Discover the hidden world of browser events
  • Use DOM and JavaScript to respond to specific events
  • Learn when the web page is ready to be modified and controlled
  • Performance
  • Learn how to measure the speed of your DOM and JavaScript code
  • Identify code that causes Reflow and Repaint issues
  • Explain how the JavaScript Event Loop works

Prerequisites and requirements
Students should have experience with the following skills:

  • building a website with HTML
  • styling page elements with CSS
  • specifically, selecting elements by ID, class, or tag
  • using the JavaScript data types (e.g. strings, arrays, object, functions, etc.)
  • looping through data (e.g. the for loop)

These skills are covered in the following courses:

Go to Class
MOOC List is learner-supported. When you buy through links on our site, we may earn an affiliate commission.

Related Courses

Asynchronous JavaScript Requests (Udacity) Udacity
Udacity

Asynchronous JavaScript Requests (Udacity)

Fetch Data Asynchronously. This course covers everything a developer needs to know to asynchronously send and receive data in their web applications. You'll dive into how asynchronous requests work by using the XHR object to create and send asynchronous requests for image and news article data. Then, you'll see how you can perform async requests more easily using third-party libraries and APIs like jQuery's Ajax and the Fetch API.

Self Paced
Self-Paced
Programming Languages, Part A (Coursera) Coursera
University of Washington

Programming Languages, Part A (Coursera)

This course is an introduction to the basic concepts of programming languages, with a strong emphasis on functional programming. The course uses the languages ML, Racket, and Ruby as vehicles for teaching the concepts, but the real intent is to teach enough about how any language “fits together” to make you more effective programming in any language -- and in learning new ones.

Oct 5th 2026
5-12 Weeks
C++ For Programmers (Udacity) Udacity
Udacity

C++ For Programmers (Udacity)

Learn features and constructs for C++. C++ for Programmers is designed for students who are familiar with a programming language and wish to learn C++. This course focuses on 'how' as opposed to 'what'. For example, in the lesson on functions, we do not teach what a function is, but rather how to create a function in C++. The lessons are taught by several different instructors who have used C++ in their professional careers, so students get to experience different perspectives.

Self Paced
Self-Paced
Website Performance Optimization (Udacity) Udacity
Udacity,Google

Website Performance Optimization (Udacity)

The Critical Rendering Path. You will learn how to optimize any website for speed by diving into the details of how mobile and desktop browsers render pages. In this short course, you’ll learn about the Critical Rendering Path, or the set of steps browsers must take to convert HTML, CSS and JavaScript into living, breathing websites. From there, you’ll start exploring and experimenting with tools to measure performance and simple strategies to deliver the first pixels to the screen as early as possible.

Self Paced
Self-Paced
Kotlin for Android Developers (Udacity) Udacity
Udacity

Kotlin for Android Developers (Udacity)

Convert an Android app from Java to Kotlin. In this course, Aaron Sarazan, Lead Software Engineer at Capital One and a leading advocate for Kotlin, demonstrates how to take a basic Android app in Java and convert it to Kotlin, teaching you key features of the Kotlin programming language along the way. This is an efficient, fast-paced introduction to Kotlin for experienced Java programmers.

Self Paced
Self-Paced
Building High Conversion Web Forms (Udacity) Udacity
Udacity,Google

Building High Conversion Web Forms (Udacity)

Forms Rock! Any meaningful experience on the web has a form. Whether it's a form made of text boxes, toggles, buttons, checkboxes, or touchable widgets, web developers need to be purposeful about forms to make users happy and increase conversions. In this course, you'll learn best practices for modern forms as taught by Google's Ido Green and Udacity's Cameron Pittman. You'll practice your skills along the way with a few self-directed projects, including an e-commerce checkout and an event planner app!

Self Paced
Self-Paced
Intro to HTML and CSS (Udacity) Udacity
Udacity

Intro to HTML and CSS (Udacity)

In this course, you'll learn the fundamentals web development, along with best practices and professional problem-solving techniques using Developer Tools. Throughout this course, you'll learn about the underlying structure of the web - HTML. You'll learn how to use this tree-like structure to create websites. You'll also learn how to apply styling to a website through CSS. You'll learn about CSS syntax, selectors, and units. Along the way, you'll also learn about code editors and a browser's Developer Tools.

Self Paced
Self-Paced
Web Tooling & Automation (Udacity) Udacity
Udacity,Google

Web Tooling & Automation (Udacity)

Gulp, Sass, and BabelJS, Oh My! In this course, you’ll learn how to setup your development, get super productive during daily work and iteration, prevent yourself and your site from disasters and save a lot of time and effort with automatic optimization and automation. Finally, you’ll learn how to do all this while being confident your code runs on a multitude of devices in the real world.

Self Paced
Self-Paced