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

ES6 - JavaScript Improved (Udacity) Udacity
Udacity

ES6 - JavaScript Improved (Udacity)

Updates to the JavaScript language. ECMAScript 6, or ES6, has brought about a ton of changes to the JavaScript programming language. In this course, you'll explore those changes to learn about the latest features and improvements to the language including new keywords, arrow functions, the Class syntax, Promises, and so much more. Discover how much cleaner and more concise your JavaScript code can be!

Self Paced
Self-Paced
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.

Sep 14th 2026
5-12 Weeks
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
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
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
Java Programming Basics (Udacity) Udacity
Udacity

Java Programming Basics (Udacity)

Take your first steps towards becoming a Java developer! Learn Java syntax and create conditional statements, loops, and functions. Taking this course will provide you with a basic foundation in Java syntax, which is the first step towards becoming a successful Java developer. You’ll learn how computers make decisions and how Java keeps track of information through variables and data types.

Self Paced
Self-Paced
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
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
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
Intro to JavaScript (Udacity) Udacity
Udacity

Intro to JavaScript (Udacity)

Learn the fundamentals of JavaScript, the most popular programming language in web development. JavaScript is the most popular programming language for both front-end and back-end web development. Applications for JavaScript span from interactive websites to the Internet of Things, making it a great choice for beginners and experienced developers looking to learn a new programming language.

Self Paced
Self-Paced