[英]show Marker infowindow when a Marker changed in google map
JS:
var map;
function pageLoad() {
map = new google.maps.Map(document.getElementById('map'), {
zoom: 3,
center: new google.maps.LatLng(34.454543, 35.812997),
mapTypeId: google.maps.MapTypeId.ROADMAP
});
var infowindow = new google.maps.InfoWindow();
}
function getRandomArbitary(min, max) {
return Math.random() * (max - min) + min;
}
function SetLocation() {
var latitude = getRandomArbitary(1, 30);
var longitude = getRandomArbitary(1, 30);
var locationlatLng = new google.maps.LatLng(latitude, longitude);
var marker = new google.maps.Marker({
'position': locationlatLng,
'map': map
});
map.panTo(locationlatLng);
}
HTML:
<div id="map" style="width: 900px; height: 600px">
<a href="javascript:void(0)" onclick="SetLocation();">Set Custom Location</a>
當用戶單擊設置的自定義位置時,會創建一個新標記並將地圖固定在該標記上,但是創建新標記時如何動態顯示信息窗口?
創建標記后,單擊標記(帶有google.maps.event.trigger)(當然,您將需要單擊偵聽器來打開信息窗口,以及信息窗口的某些內容):
var map;
var infowindow;
function pageLoad() {
map = new google.maps.Map(document.getElementById('map'), {
zoom: 3,
center: new google.maps.LatLng(34.454543, 35.812997),
mapTypeId: google.maps.MapTypeId.ROADMAP
});
infowindow = new google.maps.InfoWindow();
}
function getRandomArbitary(min, max) {
return Math.random() * (max - min) + min;
}
function SetLocation() {
var latitude = getRandomArbitary(1, 30);
var longitude = getRandomArbitary(1, 30);
var locationlatLng = new google.maps.LatLng(latitude, longitude);
var marker = new google.maps.Marker({
'position': locationlatLng,
'map': map
});
google.maps.event.addListener(marker,'click',function(e){
if (e && e.latLng) {
infowindow.setContent("location:" +e.latLng);
} else {
infowindow.setContent("location:" +marker.getPosition());
}
infowindow.open(map,marker);
});
google.maps.event.trigger(marker,'click');
map.panTo(locationlatLng);
}
google.maps.event.addDomListener(window, 'load', pageLoad);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.