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

Browser Rendering Optimization (Udacity) Udacity
Udacity,Google

Browser Rendering Optimization (Udacity)

Building 60 FPS Web Apps. Performance matters to users. Web developers need to build apps that react quickly and render smoothly. Google performance guru Paul Lewis is here to help you destroy jank and create web apps that maintain 60 frames per second performance. You'll leave this course with the tools you need to profile apps and identify the causes of jank. You'll explore the browser's rendering pipeline and uncover patterns that make it easy to build performant apps.

Self Paced
Self-Paced
JavaScript Testing (Udacity) Udacity
Udacity

JavaScript Testing (Udacity)

Developing Apps with Confidence. In this course you'll learn how to write JavaScript applications with confidence, using the red-green-refactor workflow. You'll write comprehensive suites of tests that validate your application is functioning as intended at all times. You'll start by exploring how other industries use a variety of tests and the value it provides. You'll then start writing your very own tests, using the Jasmine testing framework. Finally, you'll start developing your very own address book application using the red-green-refactor workflow and explore a variety of scenarios including testing asynchronous functions.

Self Paced
Self-Paced
Learn to code with AI (Coursera) Coursera
Scrimba

Learn to code with AI (Coursera)

Imagine waking up tomorrow as a web developer. What would you want to build? With AI tools like ChatGPT, you're already a developer, regardless of your experience, if you know how to work with them. So in this course, you'll build functional, interactive front-end projects while learning how to write effective prompts and debug and refine your code with the help of AI.

Jun 24th 2026
2 Weeks
Creative Programming for Digital Media & Mobile Apps (Coursera) Coursera
University of London,Goldsmiths, University of London

Creative Programming for Digital Media & Mobile Apps (Coursera)

This course is for anyone who would like to apply their technical skills to creative work ranging from video games to art installations to interactive music, and also for artists who would like to use programming in their artistic practice. This course will teach you how to develop and apply programming skills to creative work. This is an important skill within the development of creative mobile applications, digital music and video games. It will teach the technical skills needed to write software that make use of images, audio and graphics, and will concentrate on the application of these skills to creative projects. Additional resources will be provided for students with no programming background.

Jun 22nd 2026
5-12 Weeks
Data Wrangling with MongoDB (Udacity) Udacity
Udacity,MongoDB University

Data Wrangling with MongoDB (Udacity)

In this course, we will explore how to wrangle data from diverse sources and shape it to enable data-driven applications. Some data scientists spend the bulk of their time doing this! Students will learn how to gather and extract data from widely used data formats. They will learn how to assess the quality of data and explore best practices for data cleaning. We will also introduce students to MongoDB, covering the essentials of storing data and the MongoDB query language together with exploratory analysis using the MongoDB aggregation framework.

Self Paced
Self-Paced
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
Learn Swift Programming Syntax (Udacity) Udacity
Udacity

Learn Swift Programming Syntax (Udacity)

From Optionals to Closure Expressions. Swift is a language created by Apple specifically for iOS and OS X development. It’s fast, concise, and comes with tools which make it easier than ever to visualize one's code. This course focuses on the syntax of the Swift programming language. By the end of the course, students should be able to apply Swift essentials to building iOS apps and employ Swift's more unique elements, like optional types and switch statements, with confidence.

Self Paced
Self-Paced
Swift for Beginners (Udacity) Udacity
Udacity

Swift for Beginners (Udacity)

Your First Programming Language. In this course, you’ll begin learning Swift, Apple's programming language for building iOS applications. You'll start with fundamentals and work your way towards understanding all the core principles necessary to get started creating your first app. At the end of the course, you'll complete a problem set of exercises designed to challenge your understanding of Swift and give you the opportunity to apply what you've learned.

Self Paced
Self-Paced
What is Programming? (Udacity) Udacity
Udacity

What is Programming? (Udacity)

A Coding Dictionary. The world of development can be daunting with all of its lingo and jargon. This course will help demystify the cryptic terms that developers use on a daily basis. You'll learn about how the web functions, what a programmer does each day, why version control is so important, and how communication on the internet happens.

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