我使用Openlayers 3作爲我的地圖應用程序。我需要確定用戶是否移動了地圖。經過一段時間的谷歌搜索後,我發現,應該是由地圖對象發起的「拖動」和「dragend」事件。不幸的是,它不會發生在我身上。我只接收移動事件,但當地圖移動時,它會被解僱 - 程序化或用戶操作。請你能幫我解決這個問題嗎?我的代碼是:Openlayers 3拖動事件
function _mappingAPI()
{
this.map = new ol.Map({
target: 'map_cont',
controls: controls,
layers: [
new ol.layer.Tile({
source: new ol.source.OSM()
})
],
view: this.view
});
this.map.on('moveend', function(evt){
writeConsoleLog("DEBUG move end",3);
});
this.map.on('dragend', function(evt){
writeConsoleLog("DEBUG drag end",3);
});
this.map.on('drag', function(evt){
writeConsoleLog("DEBUG drag",3);
});
}
目前沒有這類活動。隨時爲此創建GitHub問題。 – erilem
'pointerdrag'事件可能是你之後的事件。然而,當地圖不能被拖拽時,它也被觸發,例如,因爲你處於其範圍的邊緣。請注意,'drag'和'dragend'事件是OpenLayers 2,而不是3. – ahocevar
是的,pointerdrag適用於我 - 我剛剛在幫助頁面找到未選中「穩定版本」的「奇蹟」...;)。非常感謝。 –