代码之家  ›  专栏  ›  技术社区  ›  Fuzzyma

设置节点。outerHTML什么都不做

  •  1
  • Fuzzyma  · 技术社区  · 9 年前

    mozill api docs outerHTML :

    然而,当我在控制台中尝试此操作时,它不起作用:

    var d = document.createElement('div')
    d.outerHTML = '<p>Some Text</p>'
    console.log(d) //<div>
    

    有人能给我解释一下为什么它没有按预期工作吗?

    还是没有

    var d = document.createElement('div')
    document.body.appendChild(d)
    d.outerHTML = '<p>Some Text</p>'
    console.log(d) //<div>
    

    //EDIT2:查看生成的源代码,元素确实被替换了。然而 d

    1 回复  |  直到 9 年前
        1
  •  1
  •   j08691    9 年前

    MDN docs 回答了为什么替换div元素,以及 console.log(d) 指原始div,而不是替换的内容:

    其outerHTML属性已设置,但仍将保留对