javascript – Google Maps api v3 – 在点击事件中添加新标记之前删除标记
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了javascript – Google Maps api v3 – 在点击事件中添加新标记之前删除标记,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2031字,纯文字阅读大概需要3分钟。
内容图文
![javascript – Google Maps api v3 – 在点击事件中添加新标记之前删除标记](/upload/InfoBanner/zyjiaocheng/732/82ecd115d1214cc1adebe813ef4c544f.jpg)
我使用以下代码并试图找出如何添加一个我可以调用的函数,它将删除之前的标记,然后再添加一个新标记.地图使用onclick事件添加用户点击的标记…基本上我只想在任何给定时间在地图上有一个标记.
我已经搜索并尝试了几乎所有的东西,但必须以某种方式做错了…请快速浏览一下代码,让我知道它将如何实现.
太感谢了!
<script>
function initialize() {
var mapOptions = {
zoom: 11,
center: new google.maps.LatLng(document.getElementById('field_lat').value,document.getElementById('field_lng').value),
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById('map_canvas'),
mapOptions);
google.maps.event.addListener(map, 'click', function(e) {
// SET MY UI SEARCH TEXT FIELDS TO THE LAT AND LNG
document.getElementById('field_lat').value = e.latLng.lat();
document.getElementById('field_lng').value = e.latLng.lng();
placeMarker(e.latLng, map);
});
}
function placeMarker(position, map) {
//Marker.setMap(null);
var Marker = new google.maps.Marker({
position: position,
map: map
});
map.panTo(position);
$("#listbox ul").empty();
docall();
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
地图在体内如下
<div id="map_canvas" style="width: 400px; height: 400px;"></div>
我试图让这个或类似的东西工作,但没有骰子……
// Deletes all markers in the array by removing references to them
function deleteOverlays() {
if (markersArray) {
for (i in markersArray) {
markersArray[i].setMap(null);
}
markersArray.length = 0;
}
}
解决方法:
只需执行以下操作:
I.声明一个全局变量:
var markersArray = [];
II.定义一个函数:
function clearOverlays() {
for (var i = 0; i < markersArray.length; i++ ) {
markersArray[i].setMap(null);
}
}
要么
google.maps.Map.prototype.clearOverlays = function() {
for (var i = 0; i < markersArray.length; i++ ) {
markersArray[i].setMap(null);
}
}
III.在调用以下内容之前在’markerArray’中推送标记:
markersArray.push(marker);
google.maps.event.addListener(marker,"click",function(){});
IV.在需要的地方调用该功能.
clearOverlays();
要么
map.clearOverlays();
而已!!
希望能帮到你.
资料来源:Google Maps API v3: How to remove all markers?
内容总结
以上是互联网集市为您收集整理的javascript – Google Maps api v3 – 在点击事件中添加新标记之前删除标记全部内容,希望文章能够帮你解决javascript – Google Maps api v3 – 在点击事件中添加新标记之前删除标记所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。