Fix setting of offset for popups.

Fixes #3525
This commit is contained in:
Steve Kashishian 2015-06-09 14:25:46 -05:00 committed by Vladimir Agafonkin
parent a3425850ca
commit 3687ed81e6
2 changed files with 38 additions and 1 deletions

View File

@ -0,0 +1,36 @@
<!DOCTYPE html>
<html>
<head>
<title>Leaflet debug page</title>
<link rel="stylesheet" href="../../dist/leaflet.css" />
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="stylesheet" href="../css/screen.css" />
<script type="text/javascript" src="../../build/deps.js"></script>
<script src="../leaflet-include.js"></script>
</head>
<body>
<div id="map"></div>
<script type="text/javascript">
var osmUrl = 'http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png',
osmAttrib = '&copy; <a href="http://openstreetmap.org/copyright">OpenStreetMap</a> contributors',
osm = L.tileLayer(osmUrl, {maxZoom: 18, attribution: osmAttrib});
var map = L.map('map')
.setView([50.5, 30.51], 15)
.addLayer(osm);
L.marker(map.getCenter())
.addTo(map)
.bindPopup('A pretty CSS3 popup. <br> Easily customizable.',{offset:[100,200]})
.openPopup();
</script>
</body>
</html>

View File

@ -127,7 +127,8 @@ L.Layer.include({
_popupAnchor: function (layer) {
var anchor = layer._getPopupAnchor ? layer._getPopupAnchor() : [0, 0];
return L.point(anchor).add(L.Popup.prototype.options.offset);
var offsetToAdd = layer._popup ? layer._popup.options.offset : L.Popup.prototype.options.offset;
return L.point(anchor).add(offsetToAdd);
},
_movePopup: function (e) {