`

Jquery在IE9解释xml多出一个XML声明

阅读更多

Jquery在创建标签元素的语法为:

$('<标签>');
   在高级浏览器中,会正确执行,但在IE9等浏览器中,会被解析为xml文件,并带上xml声明:

1. 浏览器不认识的空标签时,如: 

$('<otherTags>')[0].outerHTML;
$('<otherTags/>')[0].outerHTML;
   会被JQuery误认为是xml文件:
<?XML:NAMESPACE PREFIX="PUBLIC" NS="URN:COMPONENT"/>
<othertag></othertag>

   遇到这种情况时,我们可以在空标签元素外包一个<html>,如

$('<html><otherTag>')[0].outerHTML;
$('<html><otherTag/></html>')[0].outerHTML;
   可以正确解析:
<othertag>
<othertag></othertag>

 2.标签中包含xmlns属性时,如:

$('<otherTags xmlns="jabber:client">content</otherTags>')[0].outerHTML;
   也会被JQuery误认为是xml文件:
<?XML:NAMESPACE PREFIX="[default] jabber:client" NS="jabber:client" />
<othertags xmlns="jabber:client">content</othertags>
   这时如果再简单的在标签外套一个html标签已经行不通了,我们只能曲线救国,那就是在创建时去掉xmlns属性,然后使用attr函数再追加上这个属性:
var tag = $('<otherTags>content</otherTags>');
tag.attr({xmlns:'jabber:client'});
console.log(tag[0].outerHTML);
   控制台打印结果正确结果:
<othertags xmlns="jabber:client">content</othertags>

 

 

 

 

 

分享到:
评论

相关推荐

    兼容IE,firefox jquery 创建XML

    通过理解jQuery的`$.parseXML()`、ActiveXObject(针对IE)以及DOM操作方法,开发者可以构建出既高效又兼容的JavaScript应用。同时,结合Ajax功能,可以实现与服务器的XML数据交互,提升Web应用的功能和用户体验。

    jquery读取xml.pdf

    总结以上知识点,我们可以看到,文件描述了一个通过jQuery处理XML数据和与Web服务进行数据交互的完整过程,包括构建SOAP请求、发送AJAX POST请求、解析响应数据以及浏览器兼容性处理等。这些知识点是前端开发中经常...

    jQuery行级解析读取XML文件

    这是我在做项目时的测试源码,利用jQuery的Ajax功能读取XML文件中指定行的数据。在IE6+和FireFox 3.0+浏览器上测试都完美通过。下载源码包后直接解压到你的网站根目录即可进行测试。详细代码说明请浏览关于此源码包...

    jQuery+xml三级联动

    在这个场景中,我们利用jQuery的事件处理和DOM操作功能,结合XML数据格式,来动态地更新下拉菜单选项,以达到用户选择一个级别后,下一个级别的选项会根据之前的选择自动更新的效果。这种技术对于提高用户体验有着...

    jQuery针对IE浏览器低版本测试代码

    在压缩包文件`texiao3868_1560680865`中,可能包含了一系列针对IE低版本的jQuery测试脚本和示例,这些脚本可能涉及到解决上述问题的具体代码实现,例如修复CSS兼容性问题的函数、创建兼容性事件处理机制的代码片段,...

    省份城市地区-联动下拉菜单-jquery+xml

    jquery+xml 省份 城市 区域 三级联动菜单. 用id作为连接点,高效快速. IE与firefox测试通过. 可加载默认项 里面附带例子^ ^ PS: 测试时 IE或chrome 用户请不要直接双击执行,因为这样是物理路径,不能加载xml. 请放...

    基于jquery_二维码生成和打印_兼容IE6-IE8_解决汉字乱码问题.zip

    本资源“基于jquery_二维码生成和打印_兼容IE6-IE8_解决汉字乱码问题.zip”提供了一个解决方案,它使得在老旧的IE6-IE8浏览器上也能生成并打印包含汉字的二维码,这在很多情况下是非常实用的,因为这些老版本的IE...

    js操作XML文件(兼容FF,IE)

    - `querySelector` 和 `querySelectorAll`:在支持的浏览器中,分别返回第一个匹配CSS选择器的节点和所有匹配的节点集合。 4. **遍历XML节点**: 可以使用`childNodes`属性和`firstChild`/`nextSibling`方法遍历...

    jQuery创建及操作xml格式数据示例

    值得注意的是,在使用jQuery操作XML之前,需要确保所操作的节点是XML文档的一部分,可以通过jQuery.isXMLDoc来判断一个节点是否为XML文档节点。如果是,则可以安全地使用上述方法进行操作。 本文还提到了浏览器兼容...

    使用jQuery.parseXML()时IE XML5633错误

    标题“使用jQuery.parseXML()时IE XML5633错误”揭示了一个常见的问题,即当尝试使用jQuery的`parseXML()`方法处理返回的XML数据时,IE浏览器会抛出XML5633错误。 这个错误通常发生在尝试解析的数据实际上不是...

    JQuery生成静态柱状图实例IE6\7\8,FF兼容

    JQuery是一个广泛使用的JavaScript库,它简化了DOM操作、事件处理和动画效果。在这个"JQuery生成静态柱状图实例"中,我们探讨的是如何使用JQuery来创建兼容多种浏览器(包括IE6、7、8以及Firefox)的柱状图表。 ...

    js的XML解析器 可以解析XMl文件和XML字符串

    JavaScript中的XML解析器是用于处理XML数据的关键工具,它允许开发者在浏览器环境中解析XML文档或者XML字符串,从而在Web应用中有效地使用这些数据。XML(eXtensible Markup Language)是一种结构化数据语言,常用于...

    IE6升级到IE9兼容性问题和操作手册

    2. **XML模式中的行为连接方法**:某些在XML模式下不再可用的行为连接方法,可能需要开发者采用替代的JavaScript或jQuery实现。 **第三章:JavaScript和DOM** 这部分内容未给出详细信息,但可以预见,随着IE版本的...

    jqgrid非常简单的例子,读取本地简单的XML,还有IE下的firebug调试工具

    本例子将展示如何使用jqGrid从本地XML文件中读取数据并显示在一个表格中。 首先,我们来看`index.html`或`testjq.html`这两个HTML文件,它们是网页的主体部分。通常,这两个文件会包含jqGrid所需的CSS和JS文件引用...

    JS + XML 联动菜单 支持IE、FireFox

    "联动菜单源文件.jsp" 是一个JavaServer Pages (JSP) 文件,这可能是服务器端处理逻辑的部分,比如处理Ajax请求,或者在首次加载页面时生成初始的XML数据。JSP是一种基于Java的服务器端技术,可以结合HTML和Java代码...

    jQuery特效 3D效果的网页名片flash+xml特效代码

    综合上述,这个资源包包含了一个使用jQuery实现的3D效果网页名片。它可能利用了CSS3的3D变换特性,同时可能包含了一些用Flash实现的历史版本。XML可能用于存储和组织3D效果的相关数据。为了确保跨浏览器兼容性,...

    jQuery1.3.js jquery-1.3.1.min.js jQuery1.3中文参考文档(HTML\XML\CHM)三个版本

    1、jQuery是一个快速的,简洁的,轻量级的javaScript库(压缩后只有21k),这是其它的js库所不及的。 2、代码简练、语义易懂、学习快速、文档说明丰富、各种应用也说得很详细。 3、WRITE LESS,DO MORE,写更少的代码,做...

    jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍

    标题中的“jQuery在IE下使用未闭合的xml代码创建元素时的Bug介绍”涉及到一个在Internet Explorer(尤其是版本6、7、8)中使用jQuery创建XML元素时遇到的问题。这个bug主要体现在jQuery处理未闭合的XML标签时,导致...

    JS读取,添加,修改XML

    - 使用`DOMParser`:JavaScript提供了一个内置对象`DOMParser`,可以将XML字符串解析为DOM(Document Object Model)树。例如: ```javascript var parser = new DOMParser(); var xml = parser.parseFromString...

    IE8 jquery ajax获取静态资源报错TypeError 拒绝访问

    在IT行业中,jQuery是一个广泛使用的JavaScript库,它极大地简化了DOM操作、事件处理以及Ajax交互。在本问题中,我们关注的是在IE8浏览器中使用jQuery的Ajax功能获取静态资源时遇到的“TypeError:拒绝访问”错误。...

Global site tag (gtag.js) - Google Analytics