- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
感觉理解了很多,但又卡在了新项目上..
我正在尝试从使用 Google Map API 创建的 map 中删除标记。
我在信息窗口中有一个删除标记按钮。
下面是我的代码:
function DeleteMarker(index) {
console.log(JSON.stringify(markers[index]));
markers[index].setMap(null); // problem is here
// - setMap is not a function
markers[index] = null;
}
GMaps.on('click',
map.map,
function(event) {
markers.push(new Point(map.markers.length, event.latLng.lat(), event.latLng.lng()));
var index = map.markers.length;
var lat = event.latLng.lat();
var lng = event.latLng.lng();
map.addMarker({
lat: lat,
lng: lng,
title: 'marker' + index,
infoWindow: {
content: '<p>Details:'
+ '<p>Latitude:' + event.latLng.lat() + '</p>'
+ '<p>Longitude:' + event.latLng.lng() + '</p>'+
'<button id ="btnDeleteMarker" onclick=DeleteMarker(\'' + index + '\')>Delete this stop</button>'
}
});
console.log(JSON.stringify(markers));
map.markers[index].infoWindow.open(map.map, map.markers[index]);
});
出了什么问题?我应该知道什么才能正确使用它?
最佳答案
根据我在 Google Map API documentation 上读到的内容,您也必须从 markers array
中删除标记。
我会尝试的是:
它看起来像这样:
function DeleteMarker(index) {
console.log( JSON.stringify(markers[index]) );
setMapOnAll(null); // Clear all markers from the map
var tempArray = markers; // Create a temporary array
unset( tempArray[index] ); // Unset the marker to remove
markers = array_values(tempArray); // refresh the markers array
setMapOnAll(map); // Show all markers on the map
}
我没有测试这个...我必须为它创建一个 map 。
但如果上面的代码失败我会的。
;)
关于javascript - setMap 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38793019/
感觉理解了很多,但又卡在了新项目上.. 我正在尝试从使用 Google Map API 创建的 map 中删除标记。 我在信息窗口中有一个删除标记按钮。 下面是我的代码: function Delet
我正在为 Google map 编写自定义叠加层。我有很多经纬度点,我想要带有指向和来自它们的箭头的图像。我正在关注 Google 的自定义叠加层教程 (https://developers.goog
我想从谷歌地图中删除所有旧标记并添加新标记,但 setMap(null) 不起作用,它会添加新标记而不删除旧标记。请查看我的代码 var markers = data[
我正在处理我的谷歌地图页面在 Firebug 中显示错误的问题。当我在经销商 map 中搜索时,将触发 clearLocations() 函数。但出现此错误:“markers[i].setMap
所以我在这里遇到了一些问题。此脚本在除 IE8 之外的所有浏览器中都可以正常工作 route() 函数被调用 - 并被赋予 Google map 编码的多边形和折线。每次 IE8 尝试执行 setMa
我看到这里的人可能会解释这个功能: // REMOVE All MARKERS FUNCTION // Removes all markers currently on map //
我的 bing map 无法加载信息框。我有一个数组,可以为渲染的位置创建图钉,下面是我使用的代码。我已经添加了用于显示的控制台消息,以检查它是否被正确调用。我想知道偏移/ anchor 是否与不显示
当我使用 sencha touch2.2.1 时,我遇到了一个问题。 在查看器中: items: [{ id: 'mapCanvas', xtype:'map', useCur
我有 OpanLayers 2.10,当我尝试将 OpenLayers.Control.Measure 添加到 map 控件时,出现此错误: TypeError: Object # has no me
我正在尝试从 Google map 中清除之前的路线。但是,当您进行另一次搜索时,上一次搜索的多段线和标记仍然会显示。我试过使用 directionsRenderer.setMap(null),但没有
我正在寻找 Set Java 中的实现,它提供基于元素属性的查找。用 Guava 的术语来思考它可以使用 Function 来构建。 (预计在所有集合元素中都是唯一的)并提供一种方法 find(Sea
当 ZoomIn/ZoomOut 事件触发时,我尝试删除所有圆圈和标记。我像这样插入了 For 循环中的每个标记和圆圈 gmarkers.push(new google.maps.Circle(cir
我是 Google map 新手。我将 Google Maps v3 map 添加到 ASP.NET 4.0 项目的 aspx 文件中,并尝试为 map 上的四个 KML 图层添加切换复选框。 但是,
我正在研究 RestKit 关系映射示例,但无法理解这些方法调用的目的是什么,或者调用中是否存在拼写错误。他们指的是什么?对象加载器何时会在这些关键路径处遇到内容? [objectManager.ma
marker.setMap(null) 调用不会从 map 中删除标记。 我已经确认 map 和标记变量指向正确的位置,但 setMap(null) 调用只是使标记在 map 上可见。 setVisi
当我跨浏览器测试我的站点并在 Safari 中尝试时,我的仪表板中的这个错误不知从何而来。它适用于 Chrome、Firefox 和 IE9,但适用于 Safari: 这是错误,我不知道这是哪里发生的
我是 Google map API v3 的新手。在谷歌地图官方教程中,部分示例代码使用 new google.maps.Marker({ map: map //Map option });
我在谷歌地图上使用了淘汰赛 javascrit,但我无法清除 map 上的标记,我在那里收到错误消息,错误如下 > Ripple :: Environment Warming Up (Tea. Ear
当我尝试在 map 中输入谷歌的系统位置时,它不起作用。屏幕保持空白。当我提出字符串“directionsDisplay.setMap (map);”时, map 会显示但不起作用。为什么 ?我将发布
我试图有一个按钮可以打开和关闭多个圆圈(显示/隐藏可见性)。假设我只有一个 html 按钮,并且我已经向该按钮添加了 google.maps.event.addDomListener,我见过的很多示例
我是一名优秀的程序员,十分优秀!