在Javascript中,为什么在元素上设置outerHTML会将其parentNode设置为';空';?
在Javascript中,当我将DOM中某个元素的outerHTML设置为新值(例如,将其更改为其他元素)时,其“parentNode”属性将设置为“null”。为什么?我希望它保持在outerHTML更改之前的任何值 我猜DOM正在通过解析“outerHTML”字符串并使用它替换原始对象来创建一个新对象。如果是这种情况,是否有方法检索新创建的对象 复制步骤(在Linux Chrome和Linux Firefox上测试)在Javascript中,为什么在元素上设置outerHTML会将其parentNode设置为';空';?,javascript,html,dom,Javascript,Html,Dom,在Javascript中,当我将DOM中某个元素的outerHTML设置为新值(例如,将其更改为其他元素)时,其“parentNode”属性将设置为“null”。为什么?我希望它保持在outerHTML更改之前的任何值 我猜DOM正在通过解析“outerHTML”字符串并使用它替换原始对象来创建一个新对象。如果是这种情况,是否有方法检索新创建的对象 复制步骤(在Linux Chrome和Linux Firefox上测试) 在浏览器中打开一个干净的窗口 打开开发控制台(可能是F12) 看看页面DO
obj1=document.createElement('div')
obj1.id='1'
document.body.appendChild(obj1)代码>
obj1.parentNode
-应将“body”HTML写入控制台
obj1.outerHTML=”“
obj1.parentNode
-现在将“null”写入控制台
obj1
仍然是指现在已从DOM树中分离的原始元素。相关: