javascript - Google Map API V3 - 添加 KML 层时 map "whites out"

标签 javascript google-maps google-maps-api-3 kml

我目前正在我们的开发服务器上通过 V3 API 测试谷歌地图,我想做的是从 maps.google 的常用“我的 map ”之一导入一个 KML 图层。 com。这一点是我想要 API 中的一些功能,但希望人们能够在需要时轻松地在 map 上添加或删除点。

无论如何,只通过 API 显示 map 就可以了。获取 KML 效果很好 - 我看不出有什么问题。但是,当我将 KML 添加到 API 中的 map 时,KML 中的点显示出来,但整个 map 变成白色,因此唯一显示的是标记。

我试过更改 map 类型(例如路线图与地形),但无济于事。同样,我看不出 KML 有任何问题,而且我已经验证它似乎在其他地方也能正常工作。这在我尝试的每个浏览器中都会发生,这表明我在编码中搞砸了一些东西,但我无法弄清楚是什么。

由于我们的 CMS 混淆了 map 代码,我只是将其作为外部 .js 文件导入。这是它的样子:

function initialize() {
  var mapOptions = {
    zoom: 7,
    center: new google.maps.LatLng(37.668046, -79.749756),
    mapTypeId: google.maps.MapTypeId.TERRAIN
  }
  var map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);

  var participantsLayer = new google.maps.KmlLayer('https://maps.google.com/maps/ms?msa=0&msid=204048902337864904598.0004cc332e8034251c1db&ie=UTF8&ll=37.668046,-80.289717&spn=1.959603,5.642338&output=kml');

  participantsLayer.setMap(map);
}

function loadScript() {
  var script = document.createElement("script");
  script.type = "text/javascript";
  script.src = "https://maps.googleapis.com/maps/api/js?key=abc.def&sensor=false&callback=initialize";
  document.body.appendChild(script);
}

window.onload = loadScript;

谢谢。

最佳答案

own page 中对我来说效果很好.我怀疑你的 css 中有什么东西(可能是你的 CMS 弄乱了 map 代码),怀疑它与你在问题上放置的任何标签有任何关系。

关于javascript - Google Map API V3 - 添加 KML 层时 map "whites out",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12962304/

相关文章:

javascript - Angular 有类似 window.addEventListener 的功能吗?

javascript - 同一 JS 文件的多个副本的加载时间

ios - 为什么当尝试在 Google API 中使用 iOS 的 Place Autocomplete 时,只得到 5 个结果而不是更多?

android - 如何判断经纬度是否准确

javascript - Google map 标记指向右侧

google-maps - Google Maps V3 API map 无法正确居中

javascript - Javascript 可以知道用户是否选择了禁用警报的框(防止页面创建额外的对话框)

javascript - jQuery - 获取每个元素的标签文本并输出它

android - 沿着谷歌地图路线寻找兴趣点? (安卓)

javascript - 未捕获的类型错误 : Cannot read property 'ca' of null when dragging Google Map