【问题标题】:Preloading the XML via jQuery or Javascript通过 jQuery 或 Javascript 预加载 XML
【发布时间】:2011-01-26 10:55:50
【问题描述】:

大家好,如何在 Javascript/jQuery 中预加载外部 XML 文件?

这是我的 XML 加载器:

jQuery.ajax({
            type: "GET",
            url: dictionaryList,
            dataType: ($.browser.msie) ? "text/xml" : "xml",
            success: function(xml) {
                var xml2 = load_xml(xml);
                var i=0;
                $(xml2).find('wordle').each(function(){
                    $(xml2).find('w').each(function(){
                        var tmpHold = $(this).text();
                        if (tmpHold.substring(0, 1) == letter) {
                            if ($(this).attr('p') == 1) {
                                wordColor = 'color: #693030';
                            } else {
                                wordColor = 'color: #5a5a5a';
                            }
                            $('#wordList').append('<li class="w" style="'+wordColor+';">'+$(this).text()+'</li>');
                        }
                    });
                });
            }
        });

【问题讨论】:

  • dataType 必须始终为 xml,无论使用哪种浏览器。
  • @jAndy - 我必须添加它才能让 webkit 和 IE 玩球。

标签: javascript jquery xml preloading


【解决方案1】:

一种可能性,听起来这就是您想要的,将上面的响应文档 (xml) 发送到一个变量,该变量可以在以后根据某些事件按需处理。

存储的 xml 文档和 xml 处理函数将存在于一个对象中,并且将基于事件触发器而不是 ajax 成功事件调用 xml 处理函数。如果这没有意义,请告诉我,我可以提供一些示例代码...

另外,如果您还没有适当的 ajax 调用,我建议添加一个错误:函数。

【讨论】:

    【解决方案2】:

    如果您想从不同的域获取 xml,我认为保留后端 xml 生成器/检索器脚本会很好。

    jQuery.ajax({ type: "GET", url: XML_GENERATE_BACKEND_URL, // data.xml, /generate/xml etc. .. .. ..

    苏丹

    【讨论】:

    • 对不起,我不明白。我已经有了这段代码,而且我根本没有生成 any XML(这将只托管在一个域上......)。
    • PREload... preload preload preload
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-11-24
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-05
    相关资源
    最近更新 更多