Node.isConnected
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.
isConnected
是 Node
的一个只读属性接口。无论节点是否与 DOM 树连接,该属性都会返回一个布尔值
。例如:Document
对象与一般 DOM 树连接,ShadowRoot
与 shadow DOM 连接。
语法
var isItConnected = nodeObjectInstance.isConnected
返回值
返回 布尔值
— 如果该节点与 DOM 树连接则返回 true
, 否则返回 false
。
样例
标准 DOM 树
js
let test = document.createElement("p");
console.log(test.isConnected); // Returns false
document.body.appendChild(test);
console.log(test.isConnected); // Returns true
Shadow DOM 树
js
// Create a shadow root
var shadow = this.attachShadow({ mode: "open" });
// Create some CSS to apply to the shadow dom
var style = document.createElement("style");
console.log(style.isConnected); // returns false
style.textContent =
".wrapper {" +
"position: relative;" +
"}" +
".info {" +
"font-size: 0.8rem;" +
"width: 200px;" +
"display: inline-block;" +
"border: 1px solid black;" +
"padding: 10px;" +
"background: white;" +
"border-radius: 10px;" +
"opacity: 0;" +
"transition: 0.6s all;" +
"position: absolute;" +
"bottom: 20px;" +
"left: 10px;" +
"z-index: 3;" +
"}" +
// Attach the created style element to the shadow dom
shadow.appendChild(style);
console.log(style.isConnected); // Returns true
规范
Specification |
---|
DOM Standard # ref-for-dom-node-isconnected① |
浏览器兼容性
BCD tables only load in the browser