Add popup back to icon example
This commit is contained in:
@@ -13,6 +13,9 @@
|
||||
#map {
|
||||
position: relative;
|
||||
}
|
||||
#popup {
|
||||
padding-bottom: 24px;
|
||||
}
|
||||
</style>
|
||||
</head>
|
||||
<body>
|
||||
@@ -30,6 +33,7 @@
|
||||
<div class="row-fluid">
|
||||
<div class="span12">
|
||||
<div id="map" class="map">
|
||||
<div id="popup"></div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@@ -42,7 +46,7 @@
|
||||
<div id="docs">
|
||||
<p>See the <a href="icon.js" target="_blank">icon.js source</a> to see how this is done.</p>
|
||||
</div>
|
||||
<div id="tags">vector, style, icon, marker</div>
|
||||
<div id="tags">vector, style, icon, marker, popup</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
goog.require('ol.Map');
|
||||
goog.require('ol.Overlay');
|
||||
goog.require('ol.OverlayPositioning');
|
||||
goog.require('ol.RendererHint');
|
||||
goog.require('ol.View2D');
|
||||
goog.require('ol.format.GeoJSON');
|
||||
@@ -54,3 +56,33 @@ var map = new ol.Map({
|
||||
zoom: 3
|
||||
})
|
||||
});
|
||||
|
||||
var element = document.getElementById('popup');
|
||||
|
||||
var popup = new ol.Overlay({
|
||||
element: element,
|
||||
positioning: ol.OverlayPositioning.BOTTOM_CENTER,
|
||||
stopEvent: false
|
||||
});
|
||||
map.addOverlay(popup);
|
||||
|
||||
// display popup on click
|
||||
map.on('singleclick', function(evt) {
|
||||
var feature;
|
||||
map.forEachFeatureAtPixel(evt.getPixel(), function(f) {
|
||||
feature = f;
|
||||
});
|
||||
if (feature) {
|
||||
var geometry = feature.getGeometry();
|
||||
var coord = geometry.getCoordinates();
|
||||
popup.setPosition(coord);
|
||||
$(element).popover({
|
||||
'placement': 'top',
|
||||
'html': true,
|
||||
'content': feature.get('name')
|
||||
});
|
||||
$(element).popover('show');
|
||||
} else {
|
||||
$(element).popover('destroy');
|
||||
}
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user