[英]Pinch zoom event in openlayers
我正在圖像上使用openlayers,並希望具有它,以便如果我一直縮小並稍微偏向一側,它將自動居中。 我有以下代碼,但無法正常工作。 看起來好像沒有在緊急情況下調用“ zoomEnd”,但是會觸發什么事件?
是否有Openayers中所有可能監聽的事件的列表? 我在文檔的任何地方都找不到類似的東西。
map = new OpenLayers.Map('detailsdiv', {
projection : 'EPSG:3785',
units : 'm',
fractionalZoom : true,
eventListeners: {
"zoomend": recenterMap
},
maxResolution: Math.pow(2, graphic.numberOfTiers - 1),
numZoomLevels : graphic.numberOfTiers,
controls: [
new OpenLayers.Control.TouchNavigation({
dragPanOptions: {
enableKinetic: true
}
})
]
});
=============================
function recenterMap(){
if (!map.centered){
if (map.getZoom() == 0){
map.centered = true;
map.zoomToMaxExtent();
map.zoomTo(0);
} else {
}
}
}
我相信您最好使用moveend事件。 當拖動,平移或縮放結束時會被觸發...更好。 另外,這是事件列表: http : //dev.openlayers.org/releases/OpenLayers-2.12/doc/apidocs/files/OpenLayers/Map-js.html#OpenLayers.Map.events
您可能還想在最近的Map()函數中使用map.setCenter()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.