博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
增加XMLDoc对IE 11的支持
阅读量:6942 次
发布时间:2019-06-27

本文共 1055 字,大约阅读时间需要 3 分钟。

     笔者开发的一个项目之前在IE 9,IE10下运行正常,这两天由于IE升级到11。它就运行不正常了,比如报了一个错误---“XSLTProcessor”未定义(当然该错误可能随着开发代码的不同稍有差别)。下边是以前的代码:

function loadXMLDoc(dname) {

    if (window.ActiveXObject)
    {
        xhttp = new ActiveXObject("Msxml2.XMLHTTP.3.0");
    }
    else
    {
        xhttp = new XMLHttpRequest();
    }
    xhttp.open("GET", dname, false);
    xhttp.send("");
    return xhttp.responseXML;
}
function displayResult(xmlfile,xslfile) {
    xml = loadXMLDoc(xmlfile);
    xsl = loadXMLDoc(xslfile);
    // code for IE
    if (window.ActiveXObject)
    {
        ex = xml.transformNode(xsl);
        document.getElementById("modload").innerHTML = ex;
    }
    // code for Mozilla, Firefox, Opera, etc.
    else if (document.implementation && document.implementation.createDocument)
    {
        xsltProcessor = new XSLTProcessor();
        xsltProcessor.importStylesheet(xsl);
        resultDocument = xsltProcessor.transformToFragment(xml, document);
        document.getElementById("modload").appendChild(resultDocument);
    }
}
      经过调试发现,在IE 11下,它没进入“code for IE"分支。本人的解决办法是把上边红体字修改为if (window.ActiveXObject||"ActiveXObject" in window),就又可以正常运行了。

转载于:https://www.cnblogs.com/yangxiaowei/p/3688852.html

你可能感兴趣的文章
如何做好企业级邮件系统的安全防范技术?
查看>>
虚拟化VMware之存储与虚拟主机管理(2)
查看>>
我的友情链接
查看>>
shell中变量的间接引用
查看>>
二、lwip协议栈之telnet
查看>>
谈谈Ext JS的组件——布局的使用方法
查看>>
python入门书籍
查看>>
004-关闭文件后自动备份
查看>>
js实现当前导航菜单高亮显示
查看>>
sqlserver 分页
查看>>
php通过system()调用Linux命令问题
查看>>
swift 警告框 - 自定义按钮颜色,图片
查看>>
提高搜索引擎结果页面排名的各种技术
查看>>
刷题常用的STL容器总结
查看>>
sdut 1451 括号东东 (dp或模拟)
查看>>
POJ1002 487-3279
查看>>
Appium 在 Android UI 测试中的应用
查看>>
登录界面 动画背景效果
查看>>
DEV 第三方控件报表分类汇总
查看>>
DLL技术应用03 - 零基础入门学习Delphi46
查看>>