ShadowRoot: thuộc tính mode
Baseline
Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since January 2020.
Thuộc tính chỉ đọc mode của ShadowRoot chỉ định chế độ của nó - hoặc open hoặc closed. Điều này xác định các tính năng nội bộ của shadow root có thể truy cập từ JavaScript hay không.
Khi mode của một shadow root là "closed", các chi tiết nội bộ trong phần triển khai của shadow root sẽ không thể truy cập và không thể thay đổi từ JavaScript, tương tự như cách các chi tiết nội bộ trong phần triển khai của, ví dụ, phần tử <video> không thể truy cập và không thể thay đổi từ JavaScript.
Giá trị của thuộc tính này được đặt bằng thuộc tính mode của đối tượng được truyền vào Element.attachShadow(), hoặc bằng thuộc tính shadowrootmode của phần tử <template> khi shadow root được tạo theo kiểu khai báo.
Giá trị
Một giá trị chuỗi có thể là một trong các giá trị sau:
Ví dụ
// Chúng ta tạo một shadow root đóng, không thể truy cập
let element = document.createElement("div");
element.attachShadow({ mode: "closed" });
console.log(element.shadowRoot); // ghi null vì shadow root là closed
// Chúng ta tạo một shadow root mở, có thể truy cập
let element2 = document.createElement("div");
element2.attachShadow({ mode: "open" });
console.log(`Shadow là ${element2.shadowRoot.mode}`); // ghi "Shadow is open"
element2.shadowRoot.textContent = "Opened shadow"; // Shadow là open, có thể truy cập từ bên ngoài
Thông số kỹ thuật
| Thông số kỹ thuật |
|---|
| DOM> # dom-shadowroot-mode> |