Created
June 14, 2016 08:57
-
-
Save Shemeikka/1e4f009cf6b36a4cbc7c9760589ff444 to your computer and use it in GitHub Desktop.
Drag Leaflet.js circle
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
// From http://codepen.io/kad3nce/pen/bEdwOE | |
var map = L.map('map').setView(center, 13); | |
var circle = L.circle(center, 1000).addTo(map); | |
circle.on('mousedown', function (event) { | |
map.dragging.disable(); | |
var _circle$_latlng = circle._latlng; | |
var circleStartingLat = _circle$_latlng.lat; | |
var circleStartingLng = _circle$_latlng.lng; | |
var _event$latlng = event.latlng; | |
var mouseStartingLat = _event$latlng.lat; | |
var mouseStartingLng = _event$latlng.lng; | |
map.on('mousemove', function (event) { | |
var _event$latlng2 = event.latlng; | |
var mouseNewLat = _event$latlng2.lat; | |
var mouseNewLng = _event$latlng2.lng; | |
var latDifference = mouseStartingLat - mouseNewLat; | |
var lngDifference = mouseStartingLng - mouseNewLng; | |
var center = [ | |
circleStartingLat - latDifference, | |
circleStartingLng - lngDifference | |
]; | |
circle.setLatLng(center); | |
}); | |
}); | |
map.on('mouseup', function () { | |
map.dragging.enable(); | |
map.removeEventListener('mousemove'); | |
}); |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Only issue so far: Click-event is fired after move ends.