Я использую Openlayers 3 для моего приложения отображения. Мне нужно определить, что пользователь переместил карту. Через некоторое время я нашел, что там будут «перетаскивать» и «перетаскивать» события, запущенные объектом карты. К сожалению, со мной это не происходит. Я получаю только событие moveend, но он запускается в любое время, когда карта перемещается - программная или пользовательская. Пожалуйста, не могли бы вы помочь мне в этом вопросе? Мой код:Openlayers 3 drag event
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
Yep, pointerdrag работает для меня - я просто нашел «чудо» снятия «стабильной версии» на странице справки ...;). Большое спасибо. –