http://developer.mozilla.org/en/docs/Using_XML_Data_Islands_in_Mozilla这篇文章的名字就叫做《Using XML Data Islands in Mozilla》,曾经让我很长的一段时间里面以为Mozilla(以及firefox)是支持xml数据岛的,只是支持的方式有所不同。今天再次重读的时候才突然注意到,其实第一段已经讲明白了,这只是个mimic
One handy feature of Internet Explorer is the ability to use data islands to link data to html controls on a page. This feature is not readily built into Mozilla, but one can easily mimic this behaviour to build cross-browser web applications.
(emu译)IE的一个很好用的特性是可以用把数据岛把数据和html连接起来(自动展现数据)。Mozilla还没有准备为这个特性提供内建的支持,但是我们可以轻易的模仿IE这个特性来构建跨浏览器的网络应用。
假的就是假的,所以有些特性是模仿不出来的,你可以用nodeValue来代替Text属性,可以用innerHTML来代替xml属性,但是你怎么处理这个数据呢: <![CDATA[ abc ]]> 。html没有提供CDATA这样的xml支持。
还好Mozilla提供了另一种解决方案 DOMPaser 。我们可以通过这样的方式来提供对页面内xml代码的一致性的解析和使用:
function parseXML(st){
if(isIE){
var result = new ActiveXObject("microsoft.XMLDOM");
result.loadXML(st);
}else{
var parser = new DOMParser();
var result = parser.parseFromString(st, "text/xml");
}
return result;
}
对节点的一致性操作请参考
http://www.blogjava.net/emu/articles/32699.html