Open In App

How to use DOM and Events ?

DOM (Document Object Model), a programming interface that is used to connect web pages to scripts by representing the structure of a document such as HTML documents. It defines the way a document is to be accessed and manipulated and also defines the logical structure of documents.

The way DOM represents a document is with a logic tree ( DOM Tree ).



To provide a dynamic interface to a webpage, we use events in JavaScript . These events are attached to elements in the DOM ( Document Object Model ). By default, events use bubbling propagation i.e from children to parent. Events can be bound either as inline or in the external script (JavaScript file).

Using DOM and Events: Suppose we want to make changes in the document or stylesheet on a certain event. The event can be the loading of a web page, selection of any specific element or a form is submitted, etc.



Some common event attributes are as follows.

Example 1: In this example, we are attaching an event listener to our container. When the click event happens, the text color inside the container changes from white to black.




<!DOCTYPE html>
<html>
<head>
<title>DOM and Events</title>
  <style>
    .container {
            height: 150px;
            width: 300px;
            background-color: green;
            text-align: center;
            color: white;
            font-size: 30px;
            margin: auto;
            font-weight: bolder;
            font-family: -apple-system, BlinkMacSystemFont,
                        'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
                        'Open Sans', 'Helvetica Neue', sans-serif;
        }
  </style>
</head>
<body>  
    <div class="container">GeeksforGeeks</div>
    <script>
        let container = document.querySelector('.container');
        container.addEventListener('click', function(e) {
            container.style.color = "black";
        });
    </script>  
</body>
</html>

Output:

Example 2: In this example, a keyboard event is taking place, we are attaching an event Listener on our input element. When the user is pressing an ‘Enter’ key, a message prompt is shown to the user saying “You Pressed an Enter”.




<!DOCTYPE html>
<html>
  
<head>
    <title>DOM and Events</title>
    <style>
        * {
            font-family: -apple-system, BlinkMacSystemFont,
              'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell, 
              'Open Sans', 'Helvetica Neue', sans-serif;
        }
    </style>
</head>
  
<body>
    <h3>
        Message will be displayed when 
        you press a Enter key
    </h3>
  
    <input type="text" class="inputArea">
    <p></p>
  
    <script>
        let input = document.querySelector(".inputArea");
        let p = document.querySelector("p");
        
        input.addEventListener('keydown', function(e) {
            if (e.keyCode == 13) {
                p.textContent = "You pressed an Enter";
            }
        })
    </script>
</body>
  
</html>

Output:


Article Tags :