Javascript 在谷歌地图标记上添加标签和图标
如何将标签添加到我的两个标记上,以便当您单击标记时,它会向您显示有关它的更多详细信息,以及如何将“接入点2”的图标更改为其他标记Javascript 在谷歌地图标记上添加标签和图标,javascript,php,google-maps,google-maps-api-3,Javascript,Php,Google Maps,Google Maps Api 3,如何将标签添加到我的两个标记上,以便当您单击标记时,它会向您显示有关它的更多详细信息,以及如何将“接入点2”的图标更改为其他标记 函数初始化(){ var mylatng=new google.maps.LatLng(-26.322402,31.142249), map=new google.maps.map(document.getElementById('google-map-default'){ 缩放:14, 中心:myLatlng }), marker=新的google.maps.ma
函数初始化(){
var mylatng=new google.maps.LatLng(-26.322402,31.142249),
map=new google.maps.map(document.getElementById('google-map-default'){
缩放:14,
中心:myLatlng
}),
marker=新的google.maps.marker({
职位:myLatlng,
地图:地图,
标题:“我们在这里!”
});
var accessPoint1=新的google.maps.LatLng(-26.315402,31.123924),
marker1=新的google.maps.Marker({
位置:accessPoint1,
地图:地图,
标题:“接入点1”
});
var accessPoint2=新的google.maps.LatLng(-26.316700,31.138043),
marker2=新的google.maps.Marker({
位置:accessPoint2,
地图:地图,
标题:“接入点2”
});
}
google.maps.event.addDomListener(窗口“加载”,初始化)代码>
#谷歌地图默认{
高度:200px;
}
对于您的marker1,您可以
var my_contentString1 = 'my text content 1... ' ;
var my_infowindow1 = new google.maps.InfoWindow({
content: my_contentString1
});
var accessPoint1 = new google.maps.LatLng(-26.315402,31.123924),
marker1 = new google.maps.Marker({
position: accessPoint1,
map: map,
title: "Access Point 1"
});
marker1.addListener('click', function() {
my_infowindow1.open(map, marker);
});
对marker2执行同样的操作这里有一个可能更健壮、更可扩展的解决方案,它使用一个包含位置(标记)的数组和一个InfoWindow对象。有了它,您可以根据需要添加任意多个位置,而无需复制代码的其余部分
函数初始化(){
var mylatng=new google.maps.LatLng(-26.322402,31.142249);
var map=new google.maps.map(document.getElementById('map-canvas'){
缩放:13,
中心:myLatlng
});
var infowindow=new google.maps.infowindow();
var marker=new google.maps.marker({
职位:myLatlng,
地图:地图,
标题:“我们在这里!”
});
变量位置=[
[new google.maps.LatLng(-26.31540231.123924),“接入点1”,“自定义文本1'],
[new google.maps.LatLng(-26.316700,31.138043),“接入点2”,“自定义文本2']
];
对于(变量i=0;i
#地图画布{
高度:200px;
}
我最终以这种方式完成了这项工作,这对我来说非常有效
变量位置=[
[ap7',-26.303139,31.093508,7],
[ap6',-26.32240231.142249,6],
[ap5',-26.316700,31.138043,5],
[ap4',-26.315402,31.123924,4],
[ap3',-26.329244,31.150478,3],
[ap2',-26.309525,31.134632,2],
[ap1',-26.289923,31.140195,1]
];
var map=new google.maps.map(document.getElementById('map'){
缩放:14,
中心:新google.maps.LatLng(-26.30952531.134632),
mapTypeId:google.maps.mapTypeId.ROADMAP
});
var infowindow=new google.maps.infowindow();
var标记,i;
对于(i=0;i
您介意将修改添加到我的代码中并共享完整的代码吗。原谅我,我还是新手我不喜欢你的评论。。。这不是一个免费的编写代码的服务。您只需稍微思考一下,就可以很容易地将其集成到代码中。不过,对于给定的答案,我会避免为每个标记创建单独的InfoWindow对象。有两个标记不是什么大问题,但如果你有2000个标记,那可能是另一个故事。