`
keepwork
  • 浏览: 334376 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

JS--获取xml数据,兼容各大浏览器

js 
阅读更多
function getXMLNode( str_xmlUrl, str_dirPath )
{  
        if( !str_xmlUrl || !str_dirPath )
                return false;
        var _bool_IE = ( window.ActiveXObject ? true : false );
        var _obj_xmlDoc;
        if( _bool_IE )
                _obj_xmlDoc = new ActiveXObject( 'Microsoft.XMLDOM' );
        else
                _obj_xmlDoc = document.implementation.createDocument("","",null);
                
        _obj_xmlDoc.async = false;
        try
        { 
                _obj_xmlDoc.load( str_xmlUrl );  //ie 下 js获取xml
        }// try
        catch ( E )
        {
                return false;
        }// catch
        /* Mozila Firefox */
        if( !_bool_IE )
        {
                var _arr_dirPath = str_dirPath.split( '/' );
                if( !_arr_dirPath[0] )
                        _arr_dirPath.shift();
                if( !_arr_dirPath )
                        return false;
                        
                var _obj_aimElement = _obj_xmlDoc;

                var _obj_reg = /\[([0-9]+)\]/ig;

                for( var _int_i = 0; _int_i < _arr_dirPath.length; _int_i ++ )
                {
                        var _int_localIndex = 0;
                        var _int_aimIndex = 0;
                        var _str_dirPath = _arr_dirPath[_int_i];
                        var _arr_result = _obj_reg.exec( _str_dirPath );
                        var bool_catch = false;
                        if( _arr_result )
                        {
                                _int_aimIndex = _arr_result[1];
                                _str_dirPath = _str_dirPath.replace( _arr_result[0], '' );
                        }// if
                        
                        var _arr_childNodes = _obj_aimElement.childNodes;
                        for( var _int_j = 0; _int_j < _arr_childNodes.length; _int_j ++ )
                        {
                                if( _arr_childNodes[_int_j].nodeName == _str_dirPath )
                                {
                                        if( _int_localIndex == _int_aimIndex )
                                        {
                                                _obj_aimElement = _arr_childNodes[_int_j];
                                                bool_catch = true;
                                                break;
                                        }// if
                                        else
                                                _int_localIndex += 1;
                                }// if
                        }// for
                        if( !bool_catch )
                        {
                                return false;
                        }
                }// for
                return( _obj_aimElement.childNodes[0].nodeValue );  //firefox下 js获取xml

        }// if
        
        /* Microsoft IE */
        try
        {
                return _obj_xmlDoc.selectNodes( str_dirPath )[0].text;
        }
        catch( e )
        {
                return false;
        }
        return false;
}
alert(getXMLNode("http://www.baidu.com/?xml","data/pageId"));

 开发者博客www.developsearch.com

分享到:
评论

相关推荐

    JavaScript获取XML文件的数据

    在JavaScript中获取XML文件的数据是一项常见的任务,尤其在前端开发中,当需要处理服务器返回的XML数据时。本文将深入探讨如何使用JavaScript来解析和操作XML文件,以便从中提取所需的信息。 首先,我们需要理解XML...

    兼容浏览器的解析xml的js代码

    在JavaScript中,解析XML文档并使用XPath进行查询是一项常见的任务,尤其在开发跨浏览器的Web应用时,确保代码兼容性尤为重要。XPath是一种在XML文档中查找信息的语言,它允许我们根据节点的名称、属性、值或其他...

    前端开源库-xml2js-parser

    然而,JavaScript原生并不支持直接处理XML,因此出现了如`xml2js-parser`这样的开源库,帮助开发者将XML数据转换为更易于操作的JavaScript对象。 `xml2js-parser`是一个轻量级的前端库,它的主要功能是将XML文档...

    js简单幻灯片 javascript简单幻灯片 兼容浏览器

    综上所述,创建一个兼容浏览器的JavaScript幻灯片涉及的知识点广泛,包括DOM操作、事件处理、CSS样式控制、浏览器兼容性处理以及性能优化等。通过这些技术,我们可以为用户提供一个既美观又实用的网页幻灯片展示效果...

    JS导入导出Excel 兼容IE、Firefox、Chrome等浏览器

    "JS导入导出Excel 兼容IE、Firefox、Chrome等浏览器"这一技术主题,聚焦于如何使用JavaScript(JS)在各种浏览器环境下处理Excel文件,包括古老的Internet Explorer(IE)、Firefox以及Chrome。下面我们将深入探讨这...

    js-xlsx-style

    它使用纯 JavaScript 实现,可以在浏览器环境和 Node.js 环境中运行。核心功能包括读取和写入 XLSX 和 CSV 文件,支持多种数据类型,以及简单的公式计算。但是,由于其专注于数据处理,所以在样式处理方面有所欠缺。...

    前端项目-fast-xml-parser.zip

    【前端项目-fast-xml-parser】是一个专为前端开发者设计的高效XML解析库,它能够在JavaScript环境中,无需依赖C或C++扩展,快速地将XML数据转换为JS对象或JSON格式。这个项目对于处理XML格式的数据尤其有用,比如在...

    别具光芒——CSS属性、浏览器兼容与网页布局

    "别具光芒——CSS属性、浏览器兼容与网页布局"这个主题涵盖了三个核心概念:CSS属性、浏览器兼容性和网页布局。 首先,我们来详细探讨CSS属性。CSS提供了无数的属性,如颜色、字体、大小、位置等,这些属性共同决定...

    解决Js解析xml浏览器不兼容问题及省市区三级联动实现

    在JavaScript中处理XML数据时,可能会遇到浏览器兼容性问题,因为不同的浏览器对XML的解析方式可能存在差异。本文将深入探讨如何解决这些问题,并介绍如何利用XML数据实现省市区三级联动的功能。 首先,让我们来...

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

    在处理XML(可扩展标记语言)文件时,JavaScript提供了多种方法来读取、解析和修改XML数据,尽管不同浏览器(如Firefox和Internet Explorer)的实现可能存在差异。本文将详细探讨如何在JavaScript中操作XML文件,并...

    JS实现兼容各浏览器解析XML文档数据的方法

    在JS实现兼容各浏览器解析XML文档数据的方法中,首先介绍了一种使用JavaScript解析XML文档的方法。JavaScript是浏览器内置的脚本语言,它可以直接操作DOM,因此可以用来解析XML文档。具体做法是,首先使用...

    js生产excel文件兼容各浏览器

    "js生产excel文件兼容各浏览器"这个主题聚焦于如何利用JavaScript在各种浏览器环境下创建Excel文件,确保广泛兼容性。目前的方法主要针对HTML `<table>`元素来生成Excel,但期待有扩展到处理`<div>`元素的解决方案。...

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

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

    JS解析XML适用于不用的浏览器

    在JavaScript(JS)中解析XML(可扩展标记语言)是一项常见的任务,特别是在处理与服务器交换数据的Web应用程序中。XML是一种结构化数据格式,广泛用于存储和传输信息。然而,不同的浏览器可能支持不同的方法来解析...

    JS xml转json

    ### JS XML转JSON知识点 #### 一、XML与JSON简介 - **XML(Extensible Markup Language)**: 可扩展标记语言,是一种用于标记数据的标记语言,主要用于存储和传输数据。XML具有良好的结构化特性,使得它非常适合...

    js--10屏Flash+xml焦点图广告代码

    【标题】"js--10屏Flash+xml焦点图广告代码"是关于利用JavaScript、Flash和XML技术实现的一种网页动态焦点图广告的实现方法。在网页设计中,焦点图广告是一种常见的展示方式,它能以吸引人的方式轮播多张图片或内容...

    JS操作XML文件,兼容火狐、IE

    文件`show.js`可能包含了实际的JavaScript代码,用于展示如何在页面上显示从XML文件获取的数据。它可能使用DOM操作方法(如`createElement`、`appendChild`)将数据动态插入到HTML文档中。 7. `广告表.txt` 这个...

    XML之数据岛

    2. **访问XML数据**:使用XML DOM(Document Object Model)API,可以通过JavaScript或VBScript获取并操作这些数据。例如,使用JavaScript获取员工的名字: ```javascript var xmlDoc = document.getElementById('...

    javascript读写XML文件

    虽然在客户端使用JavaScript直接保存XML文件存在限制(通常需要在服务器端处理),但在某些情况下,可以使用`save`方法(仅限于IE)或通过`toString`方法获取XML文档的字符串表示,然后通过AJAX请求或其他方式将其...

    parse-xml:适用于Node.js和浏览器的快速,安全,兼容的XML解析器

    适用于Node.js和浏览器的快速,安全,兼容的XML解析器。 内容 安装 npm install @rgrove/parse-xml 或者,如果您喜欢危险的生活,则可以通过加载浏览器中,并使用parseXml全局。 产品特点 返回表示XML文档的。 在...

Global site tag (gtag.js) - Google Analytics