Skip to main content

Intro To DOM: Five Most Common DOM Selectors You Should Know


After I learned some basic HTML, CSS and JavaScript, they are finally meet together.

The DOM is Document Object Model, which is the interface between your JavaScript and HTML + CSS.

The concept is that the browser turns every HTML tag into a JavaScript object that we can manipulate. Everything is stored inside of the document object.

We interact with DOM to do things like: game, scrolling effects, drop-down menus, form validation, interactivity, or animations.

The main DOM process is Select an element and then manipulate.

How do we implement that?

The document comes with a lot of methods for selecting elements. There are five most common methods we need to know:

1. document.getElementById()
2. document.getElementsByClassName()
3. document.getElementsByTagName()
4. document.querySelector()
5. document.querySelectorAll()

All of them are started by document dot. And these five methods have all been added into the document object.

Now I am going to create a simple HTML page and show you how to implement these methods.

In the HTML page, I have one h1, one h2, and three li tags. In the li tags, I have one id named "highlight", and two class values "bolded".

getElementById

It takes a string argument and returns the one element with a matching ID.

var tag = document.getElementById("highlight");



It selects this li that has ID which is the object, and then it returns to us. Moreover, it seems to show us the HTML but the result of this is actually a JavaScript object.

getElementsByClassName

It takes a string argument and returns a list of elements that have a matching class.

var tags = document.getElementsByClassName("bolded");

It returns a list not an array. And it contains every element on the page that matches the given class name.

getElementsByTagName

It returns a list of all elements of a given tag name like <h1> or <li>.

var tags = getElementsByTagName("li");

querySelector

It returns the first element that matches a given CSS-style selector.

var tag = document.querySelector("#highlight")  // select by ID
var tag = document.querySelector(".bolded")      //select by class

We need to note that in the (), we should write the select name matches CSS selector rule. 

querySelectorAll

It returns a list of elements that matches a given CSS-style selector.

var tags = document.querySelectorAll("li");










Comments

Popular posts from this blog

Intermediate Express.js: How To Add Styles & Partials in EJS File?

So far, we only have simple HTML tags and ejs tags in each ejs file. Every template page has no style at all. And the basic HTML header and footer are also missing. Today, I learned how to add styles and partials in ejs file. Link Style Step One: Touch a Separate CSS file I create a new directory "Style" under the "EJSDemo" directory, then I add a new CSS file "app.css" inside "Style" folder. Step Two: Add app.use(express.static()) in the app.js I add app.use(express.static("style")) in the "app.js". This will tell Express.js to serve the content of "Style" directory. Step Three: Write styles in CSS file I simple give body an orange background color and set text color to be grey. Step Four: Link to CSS file in the EJS file I just add <link> tag to link the "app.css" file on the top of the h1 tag in each ejs template. As the result, when I run the app and...

Seven Most Common jQuery Methods Last Part: ADD/REMOVE/TOGGLE CLASS()

Add, remove and toggleClass is also a very common way to manipulate style. .addClass() and .removeClass() I add two class selector in the style tag. Class one is to change text color to be green, and class two is change both text and background color.  Now I refresh the page and change h1 text to green by using addClass() method: $("h1").addClass("one") .  If you want to remove the style, you can change it to removeClass("one"). I do the same thing to the list. I change the list color and add a background color by adding the class two style value: $("li").addClass("two") . .toggleClass()  According to jQuery, toggerClass method can add or remove one or more classes from each element in the set of matched elements, depending on either the class's presence or the value of the state argument. I only want to change the first list item color and background by writing: $("li").first().toggleClas...

Intro to Backend: Is Browser The Only Place To Send HTTP Request?

Today,  I begin to learn the second part of web develop course: backend. Frontend is the stuff that we can see and interactive with, such as HTML, CSS, and JS. We can type our code, style our page, or write some function to make interaction. However, backend is everything else. For example, we type Target web address in the Internet Browser. As we hit "enter", there are a few steps to go through: 1. The HTTP request is sent to a particular server's IP address. 2. The server figures out what to send us 3. It sends a HTTP response back to us Those process we are hard to see, and it happens in less than one second. The instructor said that the browser is not the only place to send the HTTP request, and there are so many choices out there. In this learning course, we are going to use Postman App . Postman allows us to make HTTP requests and viewer responses. It is really for developers to understand how things are working or debug something. In the P...