我有一个网站包含谷歌地图。我需要将图片固定在地图上的特定位置。 是否可以将该图像进行programetically添加到地图。 例如,如果我的数据库包含图像位置和要添加的位置的详细信息,则需要将我的数据库中的所有图像添加到放置在地图中的相应位置。添加图片到谷歌地图
如果可能的话,我可以使用哪种Google API来达到此目的。我的开发环境是LAMP。
谢谢, 同伴。
我有一个网站包含谷歌地图。我需要将图片固定在地图上的特定位置。 是否可以将该图像进行programetically添加到地图。 例如,如果我的数据库包含图像位置和要添加的位置的详细信息,则需要将我的数据库中的所有图像添加到放置在地图中的相应位置。添加图片到谷歌地图
如果可能的话,我可以使用哪种Google API来达到此目的。我的开发环境是LAMP。
谢谢, 同伴。
是的。他们被称为信息窗口,并附加到标记。 Google Maps API参考资料非常详细,并包含带有代码的样本。
http://code.google.com/apis/maps/documentation/javascript/overlays.html#InfoWindows
你的PHP代码将输出(回声)JavaScript以适当的标记添加到地图中。
您首先需要在地图上创建标记。标记显示为推针(但您可以使用任何其他图标)。标记暴露了您可以绑定事件侦听器的事件click
。在事件监听器中,您可以使用信息窗口来显示任何html内容。请参阅下面的示例和演示:
<script type="text/javascript" src="http://maps.google.com/maps?file=api&v=2&key=YOUR--API--KEY--GOES--HERE">
<div id="mapContent" style="height: 400px;"></div>
<script stye="text/javascript">
// INITIALIZE MAP
var map = new GMap2(document.getElementById("mapContent"));
map.setCenter(new GLatLng(0, 0), 5);
map.addControl(new GLargeMapControl3D());
map.addControl(new GMenuMapTypeControl());
// INITIALIZE MARKER DATA
var markers = [];
// GENERATE THIS FRAGMENT VIA PHP {
markers.push({
lat: parseFloat('1'),
lng: parseFloat('1'),
html: '<p><img src="http://farm5.static.flickr.com/4067/4337577836_71afd9a9e2_m.jpg"></p>'
});
markers.push({
lat: parseFloat('-1'),
lng: parseFloat('-1'),
html: '<p><img src="http://farm2.static.flickr.com/1039/1289471738_c8c7e329af_m.jpg"></p>'
});
// }
// ADD MARKERS TO MAP
for (var i = 0; i < markers.length; i++) {
var marker = new GMarker(new GLatLng(markers[i].lat, markers[i].lng));
map.addOverlay(marker);
GEvent.addListener(marker, "click", (function (j) {
return function() {
this.openInfoWindowHtml(markers[j].html);
};
})(i));
}
</script>
也许你的意思是a ground overlay?
谢谢你的回复,它的作品为我。一个更多的问题,是否可以添加多个图像到相同的标记。 – user232751 2011-01-25 14:24:52