关闭。这个问题需要更多focused.它目前不接受答案。想改进这个问题吗?更新问题,使其只关注一个问题editingthispost.关闭5年前。Improvethisquestion何时应该使用innerHTML和outerHTML之间有什么区别。您将如何最好地实现outerHTML来替换或添加内容?
我尝试以两种不同的方式获取外部HTML,基于thisquestion.不幸的是,它们都没有给出预期的结果:HTML:HelloJS:$(function(){document.write('['+$('#my_div').clone().wrapAll("").parent().get(0).innerHTML+']');document.write('['+(newXMLSerializer().serializeToString(document.getElementById('my_div')))+']');});输出是:[Hello][Hello]我希望得到以下结果:Hello
我尝试以两种不同的方式获取外部HTML,基于thisquestion.不幸的是,它们都没有给出预期的结果:HTML:HelloJS:$(function(){document.write('['+$('#my_div').clone().wrapAll("").parent().get(0).innerHTML+']');document.write('['+(newXMLSerializer().serializeToString(document.getElementById('my_div')))+']');});输出是:[Hello][Hello]我希望得到以下结果:Hello
正在重置outerHTMLdocument.body的属性(property)有一个奇怪的副作用:它增加了额外的空进入DOM,就在body之前:head{display:inline;counter-increment:h;border:1pxsolid;}head:last-of-type::after{content:'Headelementscount:'counter(h);}[onclick]::after{content:attr(onclick);}所有的浏览器在这方面似乎都是一致的。我有beentold它被指定为这种方式,但无法挖掘出关于此的权威标准立场,甚至在讨论文件
正在重置outerHTMLdocument.body的属性(property)有一个奇怪的副作用:它增加了额外的空进入DOM,就在body之前:head{display:inline;counter-increment:h;border:1pxsolid;}head:last-of-type::after{content:'Headelementscount:'counter(h);}[onclick]::after{content:attr(onclick);}所有的浏览器在这方面似乎都是一致的。我有beentold它被指定为这种方式,但无法挖掘出关于此的权威标准立场,甚至在讨论文件
在Javascript中,当我将DOM中元素的outerHTML设置为新值(例如,将其更改为不同的元素)时,其“parentNode”属性设置为“null”。为什么?我希望它保持在outerHTML更改之前的任何值。我猜DOM正在通过解析“outerHTML”字符串并使用它来替换原始对象来创建一个新对象。如果是这种情况,是否有一种方法可以检索新创建的对象?重现步骤(在LinuxChrome和LinuxFirefox上测试)在浏览器中打开一个干净的窗口,打开开发控制台(可能是F12)查看页面DOM(Chrome中的元素选项卡,Firefox中的检查器)删除“body”的任何child,只
在Javascript中,当我将DOM中元素的outerHTML设置为新值(例如,将其更改为不同的元素)时,其“parentNode”属性设置为“null”。为什么?我希望它保持在outerHTML更改之前的任何值。我猜DOM正在通过解析“outerHTML”字符串并使用它来替换原始对象来创建一个新对象。如果是这种情况,是否有一种方法可以检索新创建的对象?重现步骤(在LinuxChrome和LinuxFirefox上测试)在浏览器中打开一个干净的窗口,打开开发控制台(可能是F12)查看页面DOM(Chrome中的元素选项卡,Firefox中的检查器)删除“body”的任何child,只
我这里有一个jsfiddle-http://jsfiddle.net/stevea/QpNbu/3/-为所有具有class='active'的元素收集outerHTML。令我吃惊的是,即使我注释掉了一些HTML,如:'Someinnertext'-->outerHTML仍然把它带回来!这不可能仍然在DOM中,所以我想知道outerHTML在哪里。感谢您的任何见解。 最佳答案 HTML中的注释令人惊讶,事实上,它是DOM的一部分!如果您在此处查看此屏幕截图:您会看到googlechromewebinspector将其呈现为DOM的一部
我这里有一个jsfiddle-http://jsfiddle.net/stevea/QpNbu/3/-为所有具有class='active'的元素收集outerHTML。令我吃惊的是,即使我注释掉了一些HTML,如:'Someinnertext'-->outerHTML仍然把它带回来!这不可能仍然在DOM中,所以我想知道outerHTML在哪里。感谢您的任何见解。 最佳答案 HTML中的注释令人惊讶,事实上,它是DOM的一部分!如果您在此处查看此屏幕截图:您会看到googlechromewebinspector将其呈现为DOM的一部
我的部分代码获得了OuterHTML属性"Name"所以我可以做一些涉及解析它的事情。虽然在Firefox上的javascript中没有OuterHTML属性,但我找不到获取此字符串的替代方法。想法? 最佳答案 这是我们在pure.js中使用的函数:functionouterHTML(node){returnnode.outerHTML||newXMLSerializer().serializeToString(node);}以DOM方式使用它:outerHTML(document.getElementById('theNode')