gpt4 book ai didi

javascript - IE11 JS XMLHTTPRequest/XMLParser 丢弃 属性

转载 作者:行者123 更新时间:2023-11-28 08:27:49 25 4
gpt4 key购买 nike

所以我有一个 AJAX 调用,它返回一个完整的 XHTML 文档。在 IE 中,当我从 ajax.responseXML 获取 XMLDocument 时,body 元素上的所有属性都丢失了。创建一个新的 DOMParser 并重新解析 ajax.responseText 会得到相同的结果。在 FF 或 Chrome 中没有问题。

目前使用以下解决方法:

var x;
var body = xmldoc.getElementById('body');

if (!body) { //WTF?? IE loses the body's attributes 0.o
body = xmldoc.getElementsByTagName('body')[0];
var str = this.ajax.responseText;
var par = new DOMParser();
var tmpdoc;
var attr;
str = str.substr(str.indexOf('<body'));
str = str.substr(0, str.indexOf('>') + 1);
str += "</body>";
tmpdoc = par.parseFromString(str, "text/xml");
attr = tmpdoc.documentElement.attributes;
for (x = 0; x < attr.length; x++)
body.setAttribute(attr.item(x).name, attr.item(x).value);
}

虽然这太hacky了,有人知道更好的方法吗?

最佳答案

IE11 在同一域上的 AJAX XMLhttpRequest 有一些问题,特别是在 localhost 上,Internet Explorer 11 does not add the Origin header on a CORS request? 上有解释。

关于javascript - IE11 JS XMLHTTPRequest/XMLParser 丢弃 <body> 属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22211484/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com