Document Object Model
JavaScript-ийн DOM (Document Object Model) гэдэг нь вэб хуудсын бүтцийг объект хэлбэрээр дүрслэх загвар юм. DOM нь JavaScript-ээр вэб хуудсыг динамикаар өөрчлөх, засах боломжийг олгодог.
HTML болон XML файлуудыг мод бүтэц (tree structure)-ийн хэлбэрээр илэрхийлдэг загвар.
console.log(window.innerWidth); // Цонхны өргөнийг авах
console.log(document.title); // Хуудсын гарчгийг авах
document.getElementById("myId");
document.getElementsByClassName("myClass");
document.getElementsByTagName("div");
document.querySelector(".myClass"); // Эхний элементийг сонгоно
document.querySelectorAll(".myClass"); // Бүх элементүүдийг сонгоно
element.innerHTML = "Шинэ текст";
element.textContent = "Зөвхөн текст.";
element.setAttribute("class", "active");
style:
element.style.color = "red";
classList:
element.classList.add("newClass");
element.classList.remove("oldClass");
element.parentNode;
element.parentElement;
element.children;
element.firstElementChild;
element.lastElementChild;
element.nextElementSibling;
element.previousElementSibling;
const newDiv = document.createElement("div");
newDiv.textContent = "Hello!";
document.body.appendChild(newDiv);
parent.removeChild(child);
parent.insertBefore(newChild, referenceChild);
parentNode.replaceChild(newChild, oldChild);
parentNode.insertBefore(newChild, referenceChild);
element.addEventListener("click", function () {
alert("Clicked!");
});
Энэ арга нь JavaScript-р анимэйшн хийхэд ашиглагддаг хамгийн үр дүнтэй арга. Энэ нь браузерийн refresh rate (ихэвчлэн 60fps)-тэй тохируулж хөдөлгөөнийг хамгийн жигд харагдуулдаг.
const box = document.getElementById("box");
let position = 0;
function animate() {
position += 1; // Байршлыг нэмэгдүүлэх
box.style.left = position + "px"; // Шинэ байршлыг оноох
if (position < 300) {
requestAnimationFrame(animate); // Дахин анимэйшн хийх хүсэлт гаргах
}
}
requestAnimationFrame(animate);
Анимэйшн хийхдээ JavaScript-ийг CSS-тэй хослуулж ашиглах нь ачааллыг хөнгөвчилнө.
JavaScript-р өгөгдөл хадгалахдаа браузерийн Local Storage, Session Storage, эсвэл Cookies-ийг ашигладаг. Эдгээр нь өгөгдлийг түр зуур хадгалах эсвэл удаан хугацаанд хадгалах уян хатан боломжийг олгодог.
// Өгөгдөл хадгалах
localStorage.setItem("username", "John");
// Өгөгдөл авах
const username = localStorage.getItem("username");
console.log(username); // "John"
// Өгөгдөл устгах
localStorage.removeItem("username");
// Бүх өгөгдлийг устгах
localStorage.clear();
// Өгөгдөл хадгалах
sessionStorage.setItem("sessionId", "12345");
// Өгөгдөл авах
const sessionId = sessionStorage.getItem("sessionId");
console.log(sessionId); // "12345"
// Өгөгдөл устгах
sessionStorage.removeItem("sessionId");
// Бүх өгөгдлийг устгах
sessionStorage.clear();
Cookies нь өгөгдлийг браузер дээр хадгалах өөр нэг арга юм. Энэ нь сервер болон браузер хооронд өгөгдөл дамжуулахад тохиромжтой.
document.cookie = "username=John; expires=Fri, 31 Dec 2025 23:59:59 GMT; path=/";