我使用下面的代码将一个字符串解析为DOM:的JavaScript的DOMParser访问的innerHTML和其他属性
var doc new DOMParser().parseFromString(string, 'text/xml');
哪里string
只是像<!DOCTYPE html><html><head></head><body>content</body></html>
。
typeof doc
给我object
。如果我执行类似doc.querySelector('body')
的操作,我会返回一个DOM对象。但是,如果我尝试访问任何属性,就像你通常就可以了,它给了我undefined
:
doc.querySelector('body').innerHTML; // undefined
这同样适用于其他属性,如id
。另一方面,属性检索进行得很好doc.querySelector('body').getAttribute('id');
。
有没有神奇的功能可以访问这些属性?
PS。澄清一下,当你使用'text/xml'时,'doc'是'XMDocument'的一个实例。使用'text/html',它是'HTMLDocument'的一个实例。 – 2012-02-12 18:03:53
Waaw,相当有用的答案!我自己找不到那一个。只是MIME类型,并启用该MIME类型:) – DADU 2012-02-12 18:45:23
@RobW我假设你的意思是'XMLDocument'。 – devios1 2012-04-30 21:36:22