google.maps.Marker 对象可以监听以下用户事件,例如:
'click' 'dblclick' 'mouseup' 'mousedown' 'mouseover' 'mouseout'
http://code.google.com/apis/maps/documentation/javascript/events.html
GoogleMap 使用 InfoWindows 将数据描述覆盖在 Marker 上。
InfoWindows 在地图上方的浮动窗口中显示内容。这
信息窗口看起来有点像漫画书的文字气球;它有一个
内容区域和锥形茎,其中茎的尖端位于
地图上指定的位置。您可以看到正在运行的信息窗口
通过点击谷歌地图上的商业标记。信息窗口
构造函数接受一个 InfoWindow 选项对象,该对象指定一个集合
用于显示信息窗口的初始参数。创建后,
信息窗口未添加到地图中。制作信息窗口
可见,需要调用 InfoWindow 上的 open() 方法,通过
它是要在其上打开的地图,还可以是用来打开的标记
锚定它。 (如果没有提供标记,信息窗口将在其
位置属性。)
http://code.google.com/apis/maps/documentation/javascript/overlays.html#InfoWindows
创建一个标记并使用鼠标悬停事件附加信息窗口
var myLatlng = new google.maps.LatLng(-25.363882,131.044922);
var myOptions = {
zoom: 4,
center: myLatlng,
mapTypeId: google.maps.MapTypeId.ROADMAP
}
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
var contentString = '<div id="content">'+
'<div id="siteNotice">'+
'</div>'+
'<h1 id="firstHeading" class="firstHeading">Uluru</h1>'+
'<div id="bodyContent">'+
'<p><b>Uluru</b>, Test
'</div>'+
'</div>';
var infowindow = new google.maps.InfoWindow({
content: contentString
});
var marker = new google.maps.Marker({
position: myLatlng,
map: map,
title:"Uluru (Ayers Rock)"
});
google.maps.event.addListener(marker, 'mouseover', function() {
infowindow.open(map,marker);
});
已编辑查看您的评论后
Google 地图广泛使用 JavaScript。当用户拖动地图时,网格方块会从服务器下载并插入到页面中。当用户搜索商家时,结果会在后台下载并插入到侧面板和地图中;该页面未重新加载。通过在地图图像顶部放置一个红色图钉(由几个部分透明的 PNG 组成)动态绘制位置。
使用带有表单提交的隐藏 IFrame,因为它保留了浏览器历史记录。出于性能原因,该站点还使用 JSON 而非 XML 进行数据传输。这些技术都属于广泛的 Ajax 保护伞。 [来自维基百科]