将标记加载到Google地图到网站时出错

时间:2011-12-11 21:32:48

标签: javascript xml google-maps google-maps-api-3 google-maps-markers

我在这里做的是从我上网的XML文件中获取信息(实际上有两个,here's one example),并使用它在自定义谷歌地图上创建标记。在Safari的本地计算机上一切正常(在Chrome或Firefox中不起作用),加载xml文件,我获取所需的所有信息,并成功创建标记。这是我的代码:

function loadXml(xmlText) {
    if (window.XMLHttpRequest) {// code for IE7+, Firefox, Chrome, Opera, Safari
        xmlhttp=new XMLHttpRequest();
    } else {// code for IE6, IE5
        xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
    }
    xmlhttp.open("GET",xmlText,false);
    xmlhttp.send();
    xmlDoc=xmlhttp.responseXML;
    return xmlDoc;
}

出于某种原因,当我将代码发布到网站上时,地图会显示,但没有任何标记显示(here's the site)。当我试图弄清楚我的问题是什么时,这就是我在错误控制台中找到的:

未捕获的异常:{Exception ...“组件返回的falure代码:0x80004005(NS_ERROR_FALIURE”nresult:“0x80004005(NS-ERROR-FALIRE)”位置:“JS frame :: http://getmethere.zzl.org/ :: load XML: :第171行“数据:否]

我不完全确定这里发生了什么,我只是从其他地方借用了这部分代码。但是从我得到的,我的loadXml函数有问题。该参数接收包含XML文件的URL(请参阅第一句中的链接)。有谁能提出解决方案?

感谢!!!

2 个答案:

答案 0 :(得分:1)

您正在从其他网站加载资源,例如http://www.capitalbikeshare.com/stations/bikeStations.xml。我收到了NETWORK_ERR: XMLHttpRequest Exception 101,这是一个Access-Control-Allow-Origin问题。这意味着其他站点不允许您从其站点检索内容,因此请尝试在您自己的站点上托管XML文件(假设您拥有权限)。

答案 1 :(得分:0)

一些快速Google搜索提供此页面:http://helpful.knobs-dials.com/index.php/0x80004005_%28NS_ERROR_FAILURE%29_and_other_firefox_errors

我想知道浏览器是否无法找到或访问您正在加载的XML文件。