当用户将鼠标悬停在某个地址上时,如何显示弹出式Google Map?
|
我想设置我的网站,以便每当用户将鼠标悬停在某个地址上时,就会弹出该地址的小谷歌地图。我一直在阅读Google Maps API文档,但是我很难找到一种简单的方法来实现此目的。看来我必须使用Google所谓的“地理编码”来根据地址查找纬度和经度...这是我到目前为止的测试页:
<!DOCTYPE html>
<html>
<head>
<meta name=\"viewport\" content=\"initial-scale=1.0, user-scalable=no\" />
<style type=\"text/css\">
html { height: 100% }
body { height: 100%; margin: 0px; padding: 0px }
#map_canvas { height: 100% }
</style>
<script type=\"text/javascript\"
src=\"http://maps.google.com/maps/api/js?sensor=false\">
</script>
<script type=\"text/javascript\">
var geocoder;
var map;
function codeAddress(address) {
geocoder = new google.maps.Geocoder();
geocoder.geocode( { \'address\': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
var myOptions = {
zoom: 20,
center: results[0].geometry.location,
mapTypeId: google.maps.MapTypeId.SATELLITE
}
map = new google.maps.Map(document.getElementById(\"map_canvas\"), myOptions);
} else {
alert(\"Geocode was not successful for the following reason: \" + status);
}
});
}
</script>
</head>
<body>
<div onMouseOver=\"codeAddress(\'1405 Harrison Street, Oakland, CA\')\">
1405 Harrison Street, Oakland, CA
</div>
<div id=\"map_canvas\" style=\"width:100%; height:100%\"></div>
</body>
</html>
但是,这会使地图显示在map_canvas div中。我真正想要的是使地图显示为一个小弹出窗口,有点像工具提示。我该怎么做?另外,如何设置它,以便当用户将鼠标移出时,地图消失?
到目前为止,我一直在使用html和javascript,而我的网站处于融合状态。
没有找到相关结果
已邀请:
4 个回复
茬贺努充尽
。这样,您就可以完全控制使用javascript实际显示它的时间。完成此操作后,只需将鼠标悬停div定位到
事件即可。您可能想要做这样的事情。首先确保您将鼠标悬停在
和
事件上
接下来,定位并显示
函数中的
,如下所示。
显然,您也想在离开div时隐藏地图,因此您的
函数将做到这一点。
我知道这不能实现理想的“工具提示”方案,但是我希望这可以帮助您入门。看看这个工具提示库。我以前用过它,并且可以很容易地将任何div转换为工具提示。从那里,你应该是金。编码愉快!
哩翔购
粟痢凰副
另外,为什么需要使用完整的Google Maps API来显示地址地图?为什么不只是嵌入功能? 就像是:
鞋扣蚊冈借
我使用jQuery处理那里的一些DOM内容,但是将其更改为正在使用的任何库(或不更改)应该非常容易。与Banx代码的主要区别在于它重用了
和
对象,而不是每次都重新创建它。另外,我使用结果中的ѭ17代替ѭ18,因为我认为它更可取。