Mục lục
Trong bài viết này chúng ta cùng tìm hiểu DOM là gì và cách thao tác với DOM trên Javascript
DOM là gì?
DOM là viết tắt của chữ Document Object Model, dịch tạm ra là mô hình các đối tượng trong tài liệu HTML. Nó là một chuẩn được định nghĩa bởi W3C (Tổ Chức Web Toàn Cầu – World Wide Web Consortium) và DOM được dùng để truy xuất các tài liệu dạng HTML và XML, có dạng một cây cấu trúc dữ liệu, và thông thường mô hình DOM độc lập với hệ điều hành và dựa theo kỹ thuật lập trình hướng đối tượng để mô tả tài liệu.
Một số cách truy cập vào phần tử trong DOM
- document.getElementById => Trả 1 đối tượng
- document.getElementsByClassName => trả về list đối tương
- document.getElementsByTagName => trả về list đối tượng
- document.getElementsByName => trả về list đối tượng
- document.querySelector => 1 đối tương đầu tiên
- document.querySelectorAll => trả về list đối tượng
Ví dụ:
Đối với querySelector & querySelectorAll
Về mặt cú pháp thì querySelector và querySelectorAll có cú pháp như nhau chỉ khác querySelector trả về 1 đối tượng đầu tiên, querySelectorAll trả về danh sách đối tượng
Ví dụ:
Lấy theo id
Lấy theo class
Lấy theo tag name
Lấy theo attribute
Một số cách truy cập phần tử thông qua các thuộc tính của phần tử khác
- Phần tử sau nó
- Phần tử trước nó
- Phần tử cha
- Phần tử con
Note: Để tìm hiểu thêm các thuộc tính của phần tử có thể sử dụng cú pháp console.dir(curentElm) để kiểm tra.
Tạo mới và thêm phần tử html bằng Javascript
Tạo mới
Ở ví dụ này chúng ta sẽ tạo một thẻ a với link liên kết đến website https://ngocnv.top và nội dung text của thẻ a là 'Click đây đi, hay lắm'
Chèn phần tử vừa tạo vào một phần tử nào đó
- Chèn làm phần tử cuối cùng: parent.append(newElm)
- Chèn làm phần tử đầu tiên: parent.prepend(newElm)
Thay thế nội dung html bên trong phần tử bằng nội dung html khác
Sử dụng phương thức addEventListener để bắt sự kiện trên DOM
VD: khi click vào nút submit thì thực hiện hành động nào đó
- Truy cập vào nút submit
- Lắng nghe sự kiện
Tips: Có thể sử dụng console.dir(curentElm) để kiểm tra những sự kiện nào có thể sử dụng