首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >IE11的XML支持/替换解决方案

IE11的XML支持/替换解决方案
EN

Stack Overflow用户
提问于 2014-12-16 15:06:22
回答 1查看 2.4K关注 0票数 2

我正试图为我们目前开发的web应用程序的一个问题找到一个解决方案。我们在解决方案中使用了许多XML数据岛,它们目前已被MS淘汰(请参阅link1 )。

我尝试了以下方法:

1)使用DOMParser,但遗憾的是,IE11不支持这一点,到目前为止,所有的解决方案都指向了当前的方法:不再支持的new ActiveXObject("Microsoft.XMLDOM");

2)使用hack在页面中使用x-ua-compatible将此页面作为遗留文档(参见link2)

3)找到一个库/javascript/jquery,它可以帮助我处理这个问题,但是除了上面提到的解决方案之外,没有找到更多的解决方案来解决这个问题。

现在我的问题是:

  1. 有什么方法可以处理IE11中的XML数据岛吗?
  2. 是否有任何解决办法,将与第1)和第2)点,从以上将工作在IE 11?
  3. 对于跨浏览器而不需要完全重写的XML数据孤岛,有什么真正的替代方案吗?
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-12-23 13:56:46

到目前为止,找到的最佳方法是这样回答:

https://stackoverflow.com/a/21986537/79379

Mozilla

代码语言:javascript
运行
复制
<!DOCTYPE html>
<html>
<head>
<title>XML Data Block Demo</title>
<script id="purchase-order" type="application/xml">
<purchaseOrder xmlns="http://example.mozilla.org/PurchaseOrderML">
  <lineItem>
    <name>Line Item 1</name>
    <price>1.25</price>
  </lineItem>
  <lineItem>
    <name>Line Item 2</name>
    <price>2.48</price>
  </lineItem>
</purchaseOrder>
</script>
<script>
function runDemo() {
  var orderSource = document.getElementById("purchase-order").textContent;
  var parser = new DOMParser();
  var doc = parser.parseFromString(orderSource, "application/xml");
  var lineItems = doc.getElementsByTagNameNS("http://example.mozilla.org/PurchaseOrderML", "lineItem");
  var firstPrice = lineItems[0].getElementsByTagNameNS("http://example.mozilla.org/PurchaseOrderML", "price")[0].textContent;
  document.body.textContent = "The purchase order contains " + lineItems.length + " line items. The price of the first line item is " + firstPrice + ".";
}
</script>
</head>
<body onload="runDemo()";>
Demo did not run
</body>
</html>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27507624

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档