Javascript HTMLDOM和XMLDOM之间有什么区别
在w3school网站中有两个教程: 我想知道它们之间的关系,因为我认为HTMLDOM是一种XMLDOM 因此,XMLDOM中的方法/属性可以在HTMLDOM中使用,HTMLDOM可能拥有一些特殊的方法 但是,当我尝试使用此选项时: HTML:Javascript HTMLDOM和XMLDOM之间有什么区别,javascript,html,xml,dom,Javascript,Html,Xml,Dom,在w3school网站中有两个教程: 我想知道它们之间的关系,因为我认为HTMLDOM是一种XMLDOM 因此,XMLDOM中的方法/属性可以在HTMLDOM中使用,HTMLDOM可能拥有一些特殊的方法 但是,当我尝试使用此选项时: HTML: xxx var a=document.createElement(“a”); 文件.getElementById(“con”).appendChild(a); 它在IE中不起作用 所以我想知道问题出在哪里?您的代码中有一个错误,它遗漏了一个“e”:
xxx
var a=document.createElement(“a”);
文件.getElementById(“con”).appendChild(a);
它在IE中不起作用
所以我想知道问题出在哪里?您的代码中有一个错误,它遗漏了一个“e”:
document.getElementById('con').appendChild(a);
appendChild()
DOM指的是由XML组成的树。树由节点组成。例如:
<a x="bb">
<b> text </b>
</a>
正文
变成具有三个节点的树:一个用于a
,一个用于b
,一个用于文本。节点包含属性作为字段。因此a
节点将有一个字段:x=“bb”
HTML(实际上)是XML,因此您可以用它构建DOM树。HTML只是带有预定义元素的XML。也就是说,您不能为元素使用任何您想要的名称(您不能使用
,
,…),您可以使用预定义的名称(a
,span
,div
,…)
我之所以说“实际上”,是因为HTML通常是不完整的XML(例如,使用
是错误的XML。您应该改用
)。浏览器有智能的解析器,知道如何克服这种破坏的XML,并从HTML中生成一个可用的树。如果您想忘记与浏览器相关的问题,可以随时使用jQuery。IE的哪个版本?谢谢,但是在XML中,元素有一个方法“appendChild”,但为什么在我的示例中它不起作用?此外,在XMLDOM中,还有一个class元素。例如,document.getElementById(“xx”)将返回元素,我想知道在html中使用docxx.getxxId()时返回的类型是什么?您所说的docxx.getxxId()
是什么意思?没错,从HTML创建的DOM树中的节点有我没有指定的方法node.getElementById(x)
返回具有id
属性等于x
的子节点。节点
的类型是元素
或HtmlElement
或更具体地说是特定类型的元素,例如锚定元素
document
是DOM树的根,这样做document.getElementById()
会扫描整个HTML。那么我们可以使用document.getElementById(“xx”).getElementById(“xx”)?前者返回一个元素(节点),然后再次调用getElementById。再次抱歉。查看:您似乎不能这样做。getElementById
是document
的一种方法。但是您可以在节点上使用getElementByTagName
。请注意,
是不正确的XHTML,它是正确的HTML。请参阅HTML5规范的“void elements”部分:
<a x="bb">
<b> text </b>
</a>