Event-Oriented Programming with Javascript

By @alesanchezr and other contributors at 4Geeks Academy

last commit build by developers build by developers

This tutorial its part of a bigger group of tutorials about web development, this repository focuses only on Javascript Events, you will learn Mouse Events, Keyboard events, Frame Events and how to react to those events to make your web application interactive.

Estas instrucciones están disponibles en 🇪🇸 español 🇪🇸

What you will learn during this tutorial:

  1. The first event that triggers on a website
  2. make your code react to user clicks on buttons
  3. Make a counter that increases when the user clicks
  4. Add event listeners
  5. What is the event target?

Before we start... other related tutorials

I strongly recommend doing this tutorials in this order:

  1. Introduction to HTML
  2. Introduction to CSS
  3. Introduction to Javascript
  4. Introduction to The DOM
  5. Using events & The DOM ← you are here now 🔥
  6. Object Oriented Programming

One click installation (recommended):

You can open these exercises in just a few seconds by clicking: Open in Codespaces (recommended) or Open in Gitpod.

Once you have VSCode open the LearnPack exercises should start automatically. If exercises don't run automatically you can try typing on your terminal: $ learnpack start

Local Installation

Clone the repository in your local environment and follow the steps below:

  1. Make sure you have learnpack installed and node.js version v14+ and jest v27. This is the command to install the learnpack-cli and jest:
$ npm i learnpack jest@27.0.6 -g
  1. Clone or download this repository. Once you finish downloading, you will find a new folder with a subdirectory "exercises" that contains all the exercises within.

  2. Install the learnpack plugin to test and compile vanillajs:

$ learnpack plugins:install learnpack-dom
  1. Start the tutorial/exercises by running the following command from the root of the project:
$ learnpack start

How are the exercises organized?

Each exercise is a small react application containing the following files:

  1. app.js: represents the entry python file that will be executed by the computer.
  2. index.html: represents the entry website.
  3. style.css: your website styles, they have to be imported from the index.html
  4. README.md: contains exercise instructions.
  5. test.js: you don't have to open this file, it contains the testing script for the exercise.

Note: The exercises have automatic grading but its very rigid and string, my recommendation is to ignore the tests and use them only as a recommendation or you can get frustrated.

Contributors

Thanks goes to these wonderful people (emoji key):

  1. Alejandro Sanchez (alesanchezr), contribution: (coder) 💻 (idea) 🤔, (build-tests) ⚠️ , (pull-request-review) 👀 (build-tutorial) ✅ (documentation) 📖

  2. Paolo (plucodev), contribution: (bug reports) 🐛, contribution: (coder), (translation) 🌎

This project follows the all-contributors specification. Contributions of any kind are welcome!

This and many other exercises are built by students as part of the 4Geeks Academy Coding Bootcamp by Alejandro Sánchez and many other contributors. Find out more about our Full Stack Developer Course, and Data Science Bootcamp.