Google maps 在谷歌地图上显示多个位置标记
当鼠标移到PHP MySQL上时,我们如何在google地图上Google maps 在谷歌地图上显示多个位置标记,google-maps,google-maps-api-3,logic,Google Maps,Google Maps Api 3,Logic,当鼠标移到PHP MySQL上时,我们如何在google地图上openInfoWindowHtml,结果如下: 此网站在谷歌地图上显示信息窗口,同时将鼠标悬停在结果标题上 审判方式如下: //<![CDATA[ var map; var geocoder; var markerArray = []; function loadMap(params) { if (GBrowserIsCompatible()) { geocoder = new GClientGeoc
openInfoWindowHtml
,结果如下:
此网站在谷歌地图上显示信息窗口,同时将鼠标悬停在结果标题上
审判方式如下:
//<![CDATA[
var map;
var geocoder;
var markerArray = [];
function loadMap(params) {
if (GBrowserIsCompatible()) {
geocoder = new GClientGeocoder();
map = new GMap2(document.getElementById('map'));
map.addControl(new GSmallMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(40, -100), 4);
map.setZoom(8);
searchLocationsNear(params)
}
}
function searchLocationsNear(params) {
var data = JSON.parse(params);
var lenght = data.length;
var bounds = new GLatLngBounds();
for ( var i = 0; i < lenght; i++) {
// check lat and long available with data
if (data[i].enough_for_map) {
var name = data[i].name;
var address = data[i].address;
if (data[i].description)
var description = data[i].description;
var point = new GLatLng(data[i].latitude, data[i].longitude);
var marker = createMarker(point, name, address, description);
map.addOverlay(marker);
markerArray[i + 1] = marker;
var el_index = $('service_name_' + i);
if (el_index) {
el_index.addEvent('mouseover', marker);
// GEvent.addDomListener(el_index, 'mouseover', function() {
// GEvent.trigger(markerArray[i], 'click');
// });
}
bounds.extend(point);
}
}
map.setCenter(bounds.getCenter(), map.getBoundsZoomLevel(bounds));
}
function createMarker(point, name, address, description) {
var marker = new GMarker(point);
var html = '<b>' + name + '</b> <br/><p>' + description + '</p>' + address;
GEvent.addListener(marker, 'click', function() {
marker.openInfoWindowHtml(html);
});
return marker;
}
//
以上是mysql结果集中指向的地图位置
<h2>
<a id="service_name_1" href="/example/details/bookkeeper/191">Photographer</a>
</h2>
<h2>
<a id="service_name_2" href="/example/details/bookkeeper/192">Teacher</a>
</h2>
<h2>
<a id="service_name_3" href="/example/details/bookkeeper/193">Accountant</a>
</h2>
例外结果:
而每个h2
上的鼠标悬停应在地图上显示相应的位置信息
任何建议都将不胜感激
谢谢你走了多远
原则上你可以
在显示自定义信息窗口的地图上放置的标记上放置标准的“单击”-事件侦听器(这里有一些不同的方法/示例:)
在侧边栏列表的li元素上为“mouseover”设置另一个侦听器,这反过来会触发click事件。(以下是如何触发谷歌地图事件:)为什么要使用API-2?你的问号上写着API-3。如果我是你,我会调查“el_index.addEvent('mouseover',marker);”或者用类似“el_index.addEventListener('mouseover',function(){GEvent.trigger(markerary[i],'click')”)的行替换它;如您所述已尝试,但始终仅显示最后一个标记:(