2013-08-12 4 views

ответ

4

UPDATE:

Эти события больше не присутствует в последних версиях. Пожалуйста, обратитесь к the more recent answer за актуальной информацией.


Имена событий, которые вы ищете в drag и/или dragend (это, вероятно, лучше зависеть от имен свойств, хотя: ol.MapBrowserEvent.EventType.DRAG, но он не работает на демо-странице):

map.on('drag', function() { 
    console.log('Dragging...'); 
}); 

map.on('dragend', function() { 
    console.log('Dragging ended.'); 
}); 

Обратный дизайн, просматривая mapbrowserevent.js, документация явно упоминает события еще не задокументированы.

+6

Эти события не существует. Событие '' drag'' переименовывается в '' pointerdrag'', а '' dragend'' больше не существует, но теперь есть событие '' moveend', что похоже. –

+0

Я бы удалил ответ как устаревший, но не мог, поскольку он принят. – kryger

10

Событие moveend может быть единственным, которое вы ищете - оно обнаруживает любой сделанный ход, даже те, которые не вызваны перетаскиванием.

map.on('moveend', function (e) { 
    console.log("moved"); 
}); 

См http://openlayers.org/en/latest/apidoc/ol.Map.html

+0

Правильно ли предположить, что при движении карты не происходит никакого события? –