- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在使用 Google Maps Javascript API v3 将一些 KML 文件加载到 map 上。但是,对于某些层,我会以各种方式返回 TIMED_OUT、FETCH_ERROR 和 OK。我已经获取了每个的 URL 并将其放入 maps.google.com,其中图层总是加载得很好。有没有其他人遇到层加载不一致的问题?更重要的是,是否可以采取任何措施让 Google map 在被询问时始终加载图层?
我已经包含了我用于加载图层的代码,尽管我相当确定它没有错误,因为图层有时确实会加载。
function addMapLayer(url) {
console.log('Attempting to add layer at: ' + url);
var layer = new google.maps.KmlLayer(url, {
preserveViewport: true,
map: maps.BirdMap.map
});
google.maps.event.addListener(layer, 'status_changed', function () {
console.log('KML load: ' + layer.getStatus());
if (layer.getStatus() != 'OK') {
$('#maps-error').text('[' + layer.getStatus() + '] Google Maps could not load the layer. Please try again later.');
$('#maps-error').dialog('open');
} else {
layers.push(layer);
}
});
}
最佳答案
加载 KmlLayers
取决于几个不受控制的因素,例如托管 KML(假设这是您的服务器)文件的服务器与必须下载它的 Google 服务器之间的网络。此网络(或您的服务器)越慢,Google 服务器越容易无法获取文件。我很确定谷歌服务器不会为你的文件等待太久,所以如果网络或你的服务器很慢,它可能会放弃并给你一个错误。而且我认为没有任何重试机制,因为我已经多次看到这种情况发生(在慢速服务器上使用大文件)并且重试的唯一方法是重新加载您的页面,以便 JavaScript API 再次请求图层。
参见 this answer一些需要注意的事情。
关于javascript - 在 Google map 中加载 KmlLayers 是否成功?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9234826/
这个问题已经有答案了: Google Maps API 3 - zoom not honored (1 个回答) 已关闭 8 年前。 我正在尝试根据空间坐标数据在 Google map 上渲染邮政编码
我有一个网站,我社区的用户可以导入他的 KML 文件(从 Google map 的地球导出)并显示 map (例如他在芝加哥最喜欢的餐馆)。这部分很好也很简单,但现在我要自定义 map 上的图标,我看
我使用谷歌地图 API v3 设计了一个功能齐全的 map ,但我想使用谷歌地球插件创建完全相同的 map 。 map 可查here 我已成功加载 GE - 各大洲和地区的 kml 文件。然而我无法让
几天以来,我一直在寻找解决问题的直接方法。 例如,您需要在 map 上按特定顺序添加多个 kml 层,那么您需要 zIndex。 但是使用 Google Maps API V3,您就没有这些东西了。
我正在使用 Google Map API,并且已将 kml 图层导入到我的代码中。我的问题是我不知道如何从信息窗口中删除“未知点要素”信息。有什么建议么?这是我正在谈论的内容的屏幕截图: 这是我导入
我有一个 Controller (地址/Home/Test 见下文),它肯定会响应 get 请求: Simple placemarkAttached to the ground. Intelligen
感谢您的时间,我希望我能足够清楚地谈论我的小问题。我想使用这样的变量“coor”: var coor = kml.getDefaultViewport().getCenter(); 并将此变量用于新的
基于这个链接“https://developers.google.com/maps/documentation/android-api/utility/kml”,我一直关注它直到我必须输入这段代码:
我目前正在使用 Android 版 Google Maps API。我正在尝试对添加到 map 的 KmlLayer 进行缩放,但我不知道如何操作。 https://developers.google
我有一张带有自定义投影(针对maps.yandex.ru 图 block )和默认投影(Google 和OSM 图 block )的 map 。当我将 KmlLayer 添加到默认投影中的 map 时
是否可以在 Google map 3 中将鼠标悬停在 KMLLayer 上时显示手形光标? 两种方案我都看到了(不过好像不能用): 处理 KMLLayer 的鼠标悬停事件并在 CSS 中更改光标 处理
我正在使用 Google Maps Javascript API v3 将一些 KML 文件加载到 map 上。但是,对于某些层,我会以各种方式返回 TIMED_OUT、FETCH_ERROR 和 O
我使用以下代码在 Google map 上添加了 KmlLayer。 var ctaLayer = new google.maps.KmlLayer('https://sites.google.com
我正在编写一个应用程序来在 map 上呈现轨迹。我想根据例如动态修改这些轨迹的颜色。他们有多泥泞。 我正在使用 Google Maps v3 API。 如果可能的话,我想用 Javascript 做所
我正在使用 Google Maps JavaScript API v3。我想连接到 Google map ,即创建 map 时显示的所有默认地点的 KmlLayer 的 KmlMouseEvent。
我将 NOAA 雷达信息分层放置在焦点为 8 的 map 上。加载页面时, map 最初以 8 呈现,然后立即重新绘制自身以显示整个区域。 我使用的 KML 文件包含用于绘制雷达图像的最小/最大纬度/
我将 NOAA 雷达信息分层放置在焦点为 8 的 map 上。加载页面时, map 最初以 8 呈现,然后立即重新绘制自身以显示整个区域。 我使用的 KML 文件包含用于绘制雷达图像的最小/最大纬度/
我正在尝试将多边形图层和地标图层合并到同一张 map 中。 但是,在使用 geoxml3 解析器从 .kml 文件加载多边形图层后。 我尝试加载几个 Placemarks 图层并成功,但 Placem
我是一名优秀的程序员,十分优秀!