Internet explorer 针对IE11的XML数据岛支持/替换解决方案
我正在尝试为我正在开发的web应用程序目前存在的一个问题找到一个解决方案。 我们在解决方案中使用了许多XML数据孤岛,这些数据孤岛目前已被MS淘汰(请参阅) 我尝试了以下方法: 1) 使用DOMParser,但不幸的是IE11不支持它,到目前为止,所有的解决方法都指向了当前的方法:Internet explorer 针对IE11的XML数据岛支持/替换解决方案,internet-explorer,cross-browser,activex,Internet Explorer,Cross Browser,Activex,我正在尝试为我正在开发的web应用程序目前存在的一个问题找到一个解决方案。 我们在解决方案中使用了许多XML数据孤岛,这些数据孤岛目前已被MS淘汰(请参阅) 我尝试了以下方法: 1) 使用DOMParser,但不幸的是IE11不支持它,到目前为止,所有的解决方法都指向了当前的方法:newActiveXObject(“Microsoft.XMLDOM”)不再受支持 2) 使用hack,使用页面中的x-ua-compatible将此页面作为旧文档(请参阅) 3) 找到一个库/javascript/j
newActiveXObject(“Microsoft.XMLDOM”)代码>不再受支持
2) 使用hack,使用页面中的x-ua-compatible
将此页面作为旧文档(请参阅)
3) 找到一个库/javascript/jquery来帮助我处理这个问题,除了上面的解决方案之外,我没有找到任何其他方法来应对这种情况
现在我的问题是:
我有没有办法处理IE 11中的XML数据孤岛
是否有任何解决方法可以解决上述第1)点和第2)点对IE 11的影响
对于跨浏览器且不需要完全重写应用程序的XML数据孤岛,是否有真正的替代方案
迄今为止找到的最佳方法是这样回答:
XML数据块演示
行项目1
1.25
行项目2
2.48
函数runDemo(){
var orderSource=document.getElementById(“采购订单”).textContent;
var parser=新的DOMParser();
var doc=parser.parseFromString(orderSource,“application/xml”);
var lineItems=doc.getelementsbytagnames(“http://example.mozilla.org/PurchaseOrderML“,”行项目“);
var firstPrice=lineItems[0]。GetElementsByTagnames(“http://example.mozilla.org/PurchaseOrderML“,”价格“[0]。文本内容;
document.body.textContent=“采购订单包含“+lineItems.length+”行项目。第一行项目的价格为“+firstPrice+”;
}
演示没有运行
<!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>