0

There is some problem that I can't find out why the code worked on Safari, but failed on other browsers.

There is the html part and the main javascript part.

The main problem that I find is:

While executing the function downloadurl(url, function), cannot find the XML tags "Info", and the markers array length is 0 on many browsers. However, it's ok on Safari. The part of javascript code is like:

downloadUrl("http://travel-taoyuan.tycg.gov.tw/content/travel/xmlcontentlist1.aspx", function(doc) {
    var xml = xmlParse(doc);
    var markers = xml.documentElement.getElementsByTagName("Info");
    ......

To alert markers, it will return "0". And actually it should be "174"(Safari's result).

Thanks for answering my question.

4

1 回答 1

0

嗯,似乎是语法错误。不同的浏览器将使用不同的语法,因此它不会执行(或者如果幸运的话,充其量也不会正确执行)。

尝试类似......

        <script type="text/javascript">
        如果(窗口.XMLHttpRequest)
          {// IE7+、Firefox、Chrome、Opera、Safari 的代码
          xmlhttp=新的 XMLHttpRequest();
          }
        别的
          {// IE6、IE5的代码
          xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
          }
        xmlhttp.open("GET","http://travel-taoyuan.tycg.gov.tw/content/travel/xmlcontentlist1.aspx",false);
        xmlhttp.send();
        xmlDoc=xmlhttp.responseXML;


        var x=xmlDoc.getElementsByTagName("theMainTagName"); //TODO: 这是主要标签 ^(见注释)
        对于 (i=0;i<x.length;i++)
          {
          //TODO: 处理每个 xml 元素的代码
        //这是从特定标签获取值的代码:x[i].getElementsByTagName("theTagName")[0].childNodes[0].nodeValue
          }
        </脚本>

注意: ^'main' 标签是,例如,在这个 xml 文档的情况下,'main' 标签是 'CATALOG'

希望这可以帮助。抱歉,如果不是很清楚,自从我使用 xml/javascript 以来已经有一段时间了。如果您需要进一步解释,请发表评论

于 2012-08-27T07:45:45.860 回答