jQuery,XML as String和IE

Kev*_*ton 0 javascript xml jquery internet-explorer

我刚刚继承了一个主导航菜单目前是Flash的项目.他们问我是否可以将其切换为javascript,所以我同意试一试.导航结构本身在服务器上动态生成,并通过ajax调用选择新节点.返回是所有XML.

为防止初始加载延迟,服务器将xml从当前页面的第一次调用发送到textarea.

Firefox和Chrome可以拉出那个xml并在jQuery中操作它就好了.然而,IE扼杀了.我知道如果没有设置MIME类型IE浏览器效果不好,但由于服务器基本上没有限制,我需要找到解决方法.

存储在textarea中的xml的示例如下:

<nav> <item name='Link 1' url='http://www.somesite.com' img='/path/to/image.png' /> <item name='Link 2' url='http://www.somesite.com' img='/path/to/image.png' /> </nav>

我使用.val()方法抓取内容,该方法适用于IE以外的所有方法.我已经把头撞了一会儿.有帮助吗?

Ade*_*eel 5

此问题已在此处解决

<script type="text/javascript">

$(parseXml($("#xml").val())).find('item').each(function(){
 ...

});

function parseXml(xml)
{
    if (jQuery.browser.msie)
    {
        var xmlDoc = new ActiveXObject("Microsoft.XMLDOM");
        xmlDoc.loadXML(xml);
        xml = xmlDoc;
    }
    return xml;
}

</script>
Run Code Online (Sandbox Code Playgroud)