Mô tả sau đây được lấy từ trang này :
Phương thức getElementsByClassName () trả về một tập hợp tất cả các phần tử trong tài liệu với tên lớp được chỉ định, dưới dạng đối tượng NodeList.
Đối tượng NodeList đại diện cho một tập hợp các nút. Các nút có thể được truy cập bằng số chỉ mục. Chỉ số bắt đầu từ 0.
Mẹo: Bạn có thể sử dụng thuộc tính độ dài của đối tượng NodeList để xác định số lượng phần tử với tên lớp được chỉ định, sau đó bạn có thể lặp qua tất cả các phần tử và trích xuất thông tin bạn muốn.
Vì vậy, như một tham số getElementsByClassName
sẽ chấp nhận một tên lớp.
Nếu đây là phần thân HTML của bạn:
<div id="first" class="menuItem"></div>
<div id="second" class="menuItem"></div>
<div id="third" class="menuItem"></div>
<div id="footer"></div>
sau đó var menuItems = document.getElementsByClassName('menuItem')
sẽ trả về một tập hợp (không phải là một mảng) của 3 chữ trên <div>
, vì chúng khớp với tên lớp đã cho.
Sau đó, bạn có thể lặp lại <div>
bộ sưu tập ( các trường hợp này) trong các nút này với:
for (var menuItemIndex = 0 ; menuItems.length ; menuItemIndex ++) {
var currentMenuItem = menuItems[menuItemIndex];
// do stuff with currentMenuItem as a node.
}
Vui lòng tham khảo bài viết này để biết thêm về sự khác biệt giữa các yếu tố và các nút.
getElementsByClassName()
ngụ ý số nhiều, trong khigetElementById()
ngụ ý một mục yếu tố số ít.