google map api ---类GMap2
class GMap2
对类 GMap2
实例化以创建地图。这是 API 中的中心类。其他的都是辅助类。
构造函数
构造函数
描述
GMap2(container, opts?) |
在给定的 HTML 容器中创建新的地图,该容器通常是一个 DIV 元素。如果可选参数 opts.mapTypes 中没有给出地图类型集,则使用默认的集合 G_DEFAULT_MAP_TYPES 。如果可选参数 opts.size 中没有给出大小,则使用 container 的大小。如果给出了 opts.size ,则相应地调整地图容器元素的大小。请参阅 class GMapOptions 。 |
方法
配置
方法
返回值
描述
enableDragging() |
none |
启用地图拖拽(默认情况下启用)。 |
disableDragging() |
none |
禁用地图拖拽。 |
draggingEnabled() |
Boolean |
当且仅当启用地图拖拽时,返回 true 。 |
enableInfoWindow() |
none |
启用地图上的信息窗口操作(默认情况下启用)。 |
disableInfoWindow() |
none |
如果信息窗口处于打开状态,请关闭它并禁用打开新信息窗口。 |
infoWindowEnabled() |
Boolean |
当且仅当启用信息窗口时,返回 true 。 |
enableDoubleClickZoom() |
none |
启用双击缩放地图(默认情况下禁用)。(自 2.58 开始) |
disableDoubleClickZoom() |
none |
禁用双击缩放地图。(自 2.58 开始) |
doubleClickZoomEnabled() |
Boolean |
当且仅当启用了双击缩放地图时,返回 true 。(自 2.58 开始) |
enableContinuousZoom() |
none |
启用选择浏览器的连续平滑缩放(默认情况下禁用)。(自 2.58 开始) |
disableContinuousZoom() |
none |
禁用连续平滑缩放。(自 2.58 开始) |
continuousZoomEnabled() |
Boolean |
如果启用了连续平滑缩放,则返回 true 。(自 2.58 开始) |
enableScrollWheelZoom() |
none |
启用使用鼠标滚轮缩放。注:默认情况下禁用滚轮缩放。(自 2.78 开始) |
disableScrollWheelZoom() |
none |
禁用使用鼠标滚轮缩放。注:默认情况下禁用滚轮缩放。(自 2.78 开始) |
scrollWheelZoomEnabled() |
Boolean |
返回一个布尔值,表示是否启用了滚轮缩放。(自 2.78 开始) |
控件
方法
返回值
描述
addControl(control, position?) |
none |
将控件添加到地图。地图上的位置由可选的 position 参数确定。如果此参数不存在,则使用由 GControl.getDefaultPosition() 方法确定的控件默认位置。一个控件实例只能向地图中添加一次。 |
removeControl(control) |
none |
从地图中删除控件。如果控件从未被添加到地图中,则该操作不起任何作用。 |
getContainer() |
Node |
返回包含地图的 DOM 对象。由 GControl.initialize() 使用。 |
地图类型
方法
返回值
描述
getMapTypes() |
Array of GMapType |
返回在此地图中注册的地图类型数组。 |
getCurrentMapType() |
GMapType |
返回当前选中的地图类型。 |
setMapType(type) |
none |
选择给定的新地图类型。类型必须是为地图所知的类型。请参阅构造函数和方法 addMapType() 。 |
addMapType(type) |
none |
将新地图类型添加到地图中。有关如何定义自定义地图类型的信息,请参阅 GMapType 部分。 |
removeMapType(type) |
none |
从地图中删除地图类型。将更新通过 GMapTypeControl 显示的按钮集,并触发 removemaptype 事件。 |
地图状态
方法
返回值
描述
isLoaded() |
Boolean |
当且仅当地图在创建后就用 setCenter() 进行初始化时,返回 true 。 |
getCenter() |
GLatLng |
返回地图当前视图中心点的地理坐标。 |
getBounds() |
GLatLngBounds |
返回地图视图的可视矩形区域,用地理坐标表示。 |
getBoundsZoomLevel(bounds) |
Number |
返回给定矩形区域恰好可以放在地图视图中时的缩放级别。缩放级别要按当前选中的地图类型计算。如果还未选择地图类型,将使用地图类型列表中列出的第一个类型。 |
getSize() |
GSize |
返回地图视图的大小(以像素表示)。 |
getZoom() |
Number |
返回当前的缩放级别。 |
修改地图状态
方法
返回值
描述
setCenter(center, zoom?, type?) |
none |
按给定的中心点设置地图视图。也可以同时设置缩放级别和地图类型。地图类型必须是为地图所知的类型。请参阅构造函数和方法 addMapType() 。必须在构造地图后先调用此方法,才能设置地图的初始状态。在构造后先调用地图上的其他操作是错误的。 |
panTo(center) |
none |
将地图的中心点更改为给定的点。如果该点在当前地图视图中已经可见,则以平移动画的方式更改中心点。 |
panBy(distance) |
none |
按给定的距离(以像素表示)开始平移动画。 |
panDirection(dx, dy) |
none |
在指定方向上开始平移动画,移动幅度为地图宽度的一半,+1 是向右或向下方向,-1 是向左或向上方向。 |
setZoom(level) |
none |
将缩放级别设置为给定的新值。 |
zoomIn() |
none |
按 1 递增缩放级别。 |
zoomOut() |
none |
按 1 递减缩放级别。 |
savePosition() |
none |
存储当前的地图位置和缩放级别,以便以后用 returnToSavedPosition() 重新还原。 |
returnToSavedPosition() |
none |
恢复用 savePosition() 保存的地图视图。 |
checkResize() |
none |
通知地图其容器大小已更改。在更改了容器 DOM 对象的大小后调用此方法,以便地图能够适应新的大小。 |
叠加层
方法
返回值
描述
addOverlay(overlay) |
none |
将叠加层添加到地图中,并触发 addoverlay 事件。 |
removeOverlay(overlay) |
none |
从地图中删除叠加层。如果地图中存在叠加层,则会触发 removeoverlay 事件。 |
clearOverlays() |
none |
从地图中删除所有叠加层,并触发 clearoverlays 事件。 |
getPane(pane) |
Node |
返回包含 pane 所标识的层中的对象的 DIV。GOverlay 实例在方法 GOverlay.initialize() 中调用它,以便在地图上绘制这些实例自身。 |
信息窗口
方法
返回值
描述
openInfoWindow(point, node, opts?) |
none |
在给定的点打开简单的信息窗口。在地图上将地图平移到使打开的信息窗口完全可见的位置。信息窗口的内容为 DOM 节点。 |
openInfoWindowHtml(point, html, opts?) |
none |
在给定的点打开简单的信息窗口。在地图上将地图平移到使打开的信息窗口完全可见的位置。信息窗口的内容显示为 HTML 文本。 |
openInfoWindowTabs(point, tabs, opts?) |
none |
在给定的点打开带标签页的信息窗口。在地图上将地图平移到使打开的信息窗口完全可见的位置。信息窗口的内容为 DOM 节点。 |
openInfoWindowTabsHtml(point, tabs, opts?) |
none |
在给定的点打开带标签页的信息窗口。在地图上将地图平移到使打开的信息窗口完全可见的位置。信息窗口的内容显示为 HTML 文本。 |
showMapBlowup(point, opts?) |
none |
在给定的点打开信息窗口,窗口内包含地图上环绕此点的一个近景视图。 |
updateInfoWindow(tabs, onupdate?) |
none |
更新当前打开的 GInfoWindow 对象的内容,而不重新定位。这样,就会按新内容的大小来调整信息窗口的大小。对信息窗口内容进行实际更改后,将调用可选的 onupdate 回调函数。(自 2.85 开始) |
updateCurrentTab(modifier, onupdate?) |
none |
更新当前选中的标签页会引起对 GInfoWindow 对象的大小调整,而不重置。modifier 函数用于修改当前选中的标签页,并且将 GInfoWindowTab 作为参数传递。在信息窗口显示新内容后,调用可选的 onupdate 回调函数。(自 2.85 开始) |
closeInfoWindow() |
none |
关闭当前打开的信息窗口。 |
getInfoWindow() |
GInfoWindow |
返回此地图的信息窗口对象。如果还没有信息窗口,将创建一个信息窗口,但不显示它。此操作不受 enableInfoWindow() 影响。 |
坐标变换
方法
返回值
描述
fromLatLngToDivPixel(latlng) |
GPoint |
计算含有可拖拽地图的 DOM 元素中的地理位置所对应的像素坐标。为自定义叠加层实现 GOverlay.redraw() 方法时,需要用此方法计算自定义叠加层的位置。 |
fromDivPixelToLatLng(pixel) |
GLatLng |
计算含有可拖拽地图的 div 中的像素坐标所对应的地理坐标。实现与自定义叠加层的交互时需要使用此方法。 |
fromContainerPixelToLatLng(pixel) |
GLatLng |
计算页面含有地图的 DOM 元素中的像素坐标点所对应的地理坐标。实现自定义控件与地图的交互时需要使用此方法。 |
事件
事件
参数
描述
addmaptype |
type |
向地图中添加地图类型时会触发此事件。 |
removemaptype |
type |
从地图中删除地图类型时会触发此事件。 |
click |
overlay, point
|
用鼠标单击地图时会触发此事件。如果单击了某个标记,则该标记将通过 overlay 参数传递给事件处理程序,并且还在标记上触发 click 事件。否则,被单击点的地理坐标将在 point 参数中传递。 |
dblclick |
overlay, point
|
双击地图时触发会此事件。注意,双击标记时不触发此事件。被双击点的地理坐标将在 point 参数中传递。overlay 参数总是设置为 null 。(自 2.83 开始) |
singlerightclick |
point, src, overlay?
|
在地图容器中触发 DOM contextmenu 事件时会触发此事件。如果右击某个标记,则该标记将通过 overlay 参数传递给事件处理程序。被右击点的像素坐标(在包含地图的 DOM 元素中)和 DOM 事件的源元素将分别在 point 和 src 参数中传递。注意,如果在启用了双击缩放的情况下进行右键双击,则缩小地图,不触发 singlerightclick 事件。但是,如果禁用了双击缩放,则触发两个 singlerightclick 事件。(自 2.84 开始) |
movestart |
none |
地图视图开始更改时会触发此事件。拖拽操作或调用更改地图视图的方法时也会触发此事件,前者还同时触发 dragstart 事件。 |
move |
none |
更改地图视图时会触发此事件,并且可能是重复触发。 |
moveend |
none |
结束地图视图的更改时会触发此事件。 |
zoomend |
oldLevel, newLevel
|
地图到达新的缩放级别时会触发此事件。事件处理程序将接收先前缩放级别和新缩放级别作为参数。 |
maptypechanged |
none |
选择另一地图类型时会触发此事件。 |
infowindowopen |
none |
打开信息窗口时会触发此事件。 |
infowindowbeforeclose |
none |
关闭信息窗口前会触发此事件。(自 2.83 开始) |
infowindowclose |
none |
关闭信息窗口时会触发此事件。此事件发生前会触发 infowindowbeforeclose 事件。如果通过再次调用 openInfoWindow*() 在其他点重新打开当前已打开的信息窗口,则会先后触发 infowindowbeforeclose 、infowindowclose 和 infowindowopen 事件。 |
addoverlay |
overlay |
当使用 addOverlay() 方法向地图中添加单个叠加层时会触发此事件。新的叠加层将作为参数 overlay 传递到事件处理程序中。 |
removeoverlay |
overlay |
当使用 removeOverlay() 方法删除单个叠加层时会触发此事件。删除的叠加层将作为参数 overlay 传递到事件处理程序中。 |
clearoverlays |
none |
当使用 clearOverlays() 方法一次性删除全部叠加层时会触发此事件。 |
mouseover |
latlng |
当用户将鼠标从地图外面移动到地图上时会触发此事件。 |
mouseout |
latlng |
当用户将鼠标移离地图时会触发此事件。 |
mousemove |
latlng |
当用户在地图中移动鼠标时会触发此事件。 |
dragstart |
none |
当用户开始拖拽地图时会触发此事件。 |
drag |
none |
当用户拖拽地图时会重复触发此事件。 |
dragend |
none |
当用户停止拖拽地图时会触发此事件。 |
load |
none |
当完成地图设置时会触发此事件,并且 isLoaded() 会返回 true 。这表示位置、缩放和地图类型都已完成初始化,但可能还在装载图块图像。(自 2.52 开始) |