Node.isConnected

isConnectedNode 的一个只读属性接口。无论节点是否与 DOM 树连接,该属性都会返回一个布尔值 (en-US)。例如:Document 对象与一般 DOM 树连接,ShadowRoot 与 shadow DOM 连接。

语法

var isItConnected = nodeObjectInstance.isConnected

返回值

返回 布尔值 (en-US) — 如果该节点与 DOM 树连接则返回 true, 否则返回 false

样例

标准 DOM 树

let test = document.createElement('p');
console.log(test.isConnected); // Returns false
document.body.appendChild(test);
console.log(test.isConnected); // Returns true

Shadow DOM 树

// 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