Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/428.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何使用JavaScript在Google Maps API中仅获取一个标记_Javascript_Google Maps_Google Maps Api 3 - Fatal编程技术网

如何使用JavaScript在Google Maps API中仅获取一个标记

如何使用JavaScript在Google Maps API中仅获取一个标记,javascript,google-maps,google-maps-api-3,Javascript,Google Maps,Google Maps Api 3,我的代码: <script src="http://maps.googleapis.com/maps/api/js"> </script> <script> var map; var myCenter=new google.maps.LatLng(51.508742,-0.120850); function initialize() { var mapProp = { center:myCenter, zoom:5, map

我的代码:

<script
src="http://maps.googleapis.com/maps/api/js">
</script>

<script>
var map;
var myCenter=new google.maps.LatLng(51.508742,-0.120850);

function initialize()
{
var mapProp = {
  center:myCenter,
  zoom:5,
  mapTypeId:google.maps.MapTypeId.ROADMAP
  };

  map = new google.maps.Map(document.getElementById("googleMap"),mapProp);

  google.maps.event.addListener(map, 'click', function(event) {
    placeMarker(event.latLng);
  });
}

function placeMarker(location) {
  var marker = new google.maps.Marker({
    position: location,
    map: map,
  });
  var infowindow = new google.maps.InfoWindow({
    content: 'Latitude: ' + location.lat() + '<br>Longitude: ' + location.lng()
  });
  infowindow.open(map,marker);
}

google.maps.event.addDomListener(window, 'load', initialize);
</script>
</head>

<body>
<div id="googleMap" style="width:500px;height:380px;"></div>

var映射;
var myCenter=newgoogle.maps.LatLng(51.508742,-0.120850);
函数初始化()
{
var mapProp={
中心:迈森特,
缩放:5,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
map=new google.maps.map(document.getElementById(“googleMap”),mapProp);
google.maps.event.addListener(映射,'click',函数(事件){
地点标记(事件标记);
});
}
功能位置标记(位置){
var marker=new google.maps.marker({
位置:位置,,
地图:地图,
});
var infowindow=new google.maps.infowindow({
内容:“纬度:”+location.lat()+”
经度:“+location.lng() }); 信息窗口。打开(地图、标记); } google.maps.event.addDomListener(窗口“加载”,初始化);
我每公里都有一个新的标记。如果再次单击另一个,如何删除它

顺便说一句:读一下:

希望使用它,但它不起作用(在控制台:CurrnPosithOffice()和WHOTEPOSIONTHORE()在不安全的来源上被弃用,并且支持将在将来被删除。您应该考虑将应用程序切换到安全的来源,如HTTPS。请参阅更多细节。)

< P>而不是:

google.maps.event.addListener(map, 'click', function(event) {
    placeMarker(event.latLng);
  });
尝试使用以下方法:

google.maps.event.addListener(map, 'click', function(event) {
    setMapOnAll(null);
    placeMarker(event.latLng);
}

因此,您将在单击时删除所有当前标记,并在x、y位置添加新标记。如果您只需要一个标记,请仅创建一个,并根据需要移动它

代码片段:

var映射;
var myCenter=newgoogle.maps.LatLng(51.508742,-0.120850);
var标记;
var信息窗口;
函数初始化(){
var mapProp={
中心:迈森特,
缩放:5,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
map=new google.maps.map(document.getElementById(“googleMap”),mapProp);
google.maps.event.addListener(映射,'click',函数(事件){
地点标记(事件标记);
});
}
功能位置标记(位置){
如果(!marker | |!marker.setPosition){
marker=新的google.maps.marker({
位置:位置,,
地图:地图,
});
}否则{
标记器。设置位置(位置);
}
如果(!!infowindow&&!!infowindow.close){
infowindow.close();
}
infowindow=新建google.maps.infowindow({
内容:“纬度:”+location.lat()+”
经度:“+location.lng() }); 信息窗口。打开(地图、标记); } google.maps.event.addDomListener(窗口“加载”,初始化)
html,
身体,
#谷歌地图{
身高:100%;
宽度:100%;
边际:0px;
填充:0px
}


Thsi失败apears:newevent:227未捕获引用错误:未定义SetMapOnal是否可以尝试删除SetMapOnal并使用placeMarker(null)