谷歌地图新手,也不是脚本专家。提前感谢您提供的任何帮助。
我将谷歌地图放在商店位置页面上。我已经设法让地图使用搜索显示我想要的商店位置的标记。现在我希望将 infoWindow 填充为看起来像标准的 google 窗口。但是使用我能够在位置库上找到的代码,结果显示为未格式化且没有换行符,并且如果缺少信息,则显示错误,等等......我已经搜索并没有找到任何有帮助的东西- 所以如果这已经得到回答,请原谅我 - 我已经多次阅读谷歌地方图书馆,所以要么我很密集,要么他们只是没有解决这个具体问题。
用户将单击页面上列出的商店位置,我想向他们展示带有一个标记的地图(通过搜索我想我可以做到这一点)并且我希望商店信息在他们单击时显示在 infoWindow 中在标记上(最好我希望 infoWindow 已经打开,但我也找不到任何东西)。由于我是该站点的新手,因此无法发布 infoWindow 的图像,因此希望不需要它。就像 google 的地图网站一样,我想要一个格式良好的名称、信誉星、一个格式化的地址、电话号码和网站,如果存在的话,还需要一张公司的图片。我在下面使用的示例适用于所有这些信息都存在于谷歌中的企业。包括我目前拥有的地图代码。
请不要简单地回复以引导我回到地方图书馆;如果这就是你所拥有的,那么它没有帮助。我需要一些澄清,最好是一个例子。谢谢。
<script type="text/javascript">
var map;
var service;
var infowindow;
function initialize() {
var mvale = new google.maps.LatLng(40.708572,-74.017385);
map = new google.maps.Map(document.getElementById('map_canvas'), {
mapTypeId: google.maps.MapTypeId.ROADMAP,
center: mvale,
zoom: 16
});
var request = {
location: mvale,
radius: '500',
keyword: "Michelle Vale"
};
infowindow = new google.maps.InfoWindow();
var service = new google.maps.places.PlacesService(map);
service.search(request, callback);
}
function callback(results, status) {
if (status == google.maps.places.PlacesServiceStatus.OK) {
for (var i = 0; i < results.length; i++) {
var place = results[i];
createMarker(results[i]);
}
}
}
function createMarker(place) {
var placeLoc = place.geometry.location;
var marker = new google.maps.Marker({
map: map,
position: place.geometry.location
});
google.maps.event.addListener(marker, 'click', function() {
infowindow.setContent(place.name + place.rating + place.vicinity +
place.formatted_address + place.website );
infowindow.open(map, this);
});
}
function openInfoWindow(id){return true;}
google.maps.event.addDomListener(window, 'load', initialize);
</script>