由于某些原因,我无法让geoxml3加载我的KML文件。我尝试过使用文件的公共可用URL,以及在Chrome、Safari和Firefox中对文件的本地引用,但都没有效果。当我使用Chrome时,我收到一条控制台消息:
无法检索文件。
我的代码非常简单:
function initialize() {
var infowindow = new google.maps.InfoWindow({size: new google.maps.Size(150,50) });
var map_canvas = document.getElementById('map_canvas');
var center = new google.maps.LatLng(53, -88);
var map_options = {
center: center,
zoom: 4,
mapTypeId: google.maps.MapTypeId.TERRAIN
};
var map = new google.maps.Map(map_canvas, map_options);
var myParser = new geoXML3.parser({map: map, singleInfoWindow: true});
myParser.parse('https://sites.google.com/site/.../home/kml-files/ontario_regions_yan_1.kml');
}我已经尝试了所有其他问题提供的各种解决方案,但无法加载该文件!我错过了什么简单的东西吗?
发布于 2014-02-07 11:09:53
不幸的是,我没有正确的geoxml3.js版本。我从多利支下载了这个文件,一切都很完美。
发布于 2014-02-05 17:56:43
geoxml3使用xmlHttpRequest检索KML,xmlHttpRequest具有相同的域限制。KML需要与正在加载它的页面位于同一个域中,或者通过与正在加载它的页面位于同一个域中的代理加载它。
通过代理在geocodezip.com上使用KML
KmlLayer没有这个限制(google正在直接加载KML )
域需要是相同的。相对URL确保。试图在http://geocodezip.com上的http://www.geocodezip.com页面上加载某些内容是行不通的:
geocodezip.com和www.geocodezip.com是不同的域(不管它们看起来有多相似)。相对路径相对于页面的位置(而不是geoxml3.js脚本)
https://stackoverflow.com/questions/21584443
复制相似问题