让XML数据岛在Mozilla里工作

ZDNet软件频道 时间:2003-06-13 作者:ZDNet China |  我要评论()
本文关键词:
由于平台的局限性,也有可能是因为数据岛是由微软开发的,所以XML的数据岛注定到现在这个时候还是个非标准的工具集。幸运的是,这样的情形在另一个能够处理XML数据岛的浏览器出现之后就终止了。
本文译自Builder.com,未经许可请勿转载 最近,我写了一篇文章,陈述了XML数据岛(data island)的益处,尽管这篇受到了广泛的好评,但是很多读者指出:XML数据岛只能够和微软的Internet Explorer一起使用。由于这个平台的局限性,也有可能是因为数据岛是由微软开发的,所以XML的数据岛注定到现在这个时候还是个非标准的工具集。幸运的是,这样的情形在另一个能够处理XML数据岛的浏览器出现之后就终止了。所以,在安装了Mozilla,具备了良好的JavaScript知识,并大概了解了现实状况之后,我决定着手自己解决问题,为让Mozilla能够处理XML数据岛提供一个解决方案。

由于时间的限制,我决定把范围限制到数据岛的下列特性上。在所有的使用中,这些特性占到了95%的比例:
  • 将非制表的HTML INPUT标签绑定到XML节点上
  • 将非制表的HTML DIV标签绑定到XML节点上
  • 将非制表的HTML SPAN标签绑定到XML节点上
  • 将HTML TABLE标签绑定到XML数据岛上
  • 将制表的HTML INPUT标签绑定到XML节点上
  • 将制表的HTML DIV标签绑定到XML节点上
  • 将制表的HTML SPAN标签绑定到XML节点上


概括一下就是:如果更改某个HTML INPUT对象的值,那么相对应的XML节点的值就会发生改变。尽管一眼看上去让Mozilla能够支持XML数据岛就像是巫术,但是这可以通过使用层叠样式表(CSS)、JavaScript和第一级的HTML文档对象模型(HTML Document Object Model Level 1)来实现。

现在就开始

由于Mozilla没有内置对XML数据岛的支持,所以在碰到有XML的网页时,它就无法正确地生成文本。所以,除非采取措施,否则像Listing A里这样的数据岛就会被显示成为A这样的。在这个地方CSS就有了用武之地。你可以使用CSS来隐藏数据岛的XML(Listing B)。这个过程的其它步骤要通过JavaScript和DOM的联合使用来处理。

图A


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134