diff --git a/src/ol/render/box.js b/src/ol/render/box.js index a0541d806f..48b34fa5cf 100644 --- a/src/ol/render/box.js +++ b/src/ol/render/box.js @@ -82,13 +82,13 @@ ol.render.Box.prototype.render_ = function() { */ ol.render.Box.prototype.setMap = function(map) { if (this.map_) { - this.map_.getViewport().removeChild(this.element_); + this.map_.getOverlayContainer().removeChild(this.element_); var style = this.element_.style; style.left = style.top = style.width = style.height = 'inherit'; } this.map_ = map; if (this.map_) { - this.map_.getViewport().appendChild(this.element_); + this.map_.getOverlayContainer().appendChild(this.element_); } }; diff --git a/test/spec/ol/render/box.test.js b/test/spec/ol/render/box.test.js index 958eee52de..409a9065f7 100644 --- a/test/spec/ol/render/box.test.js +++ b/test/spec/ol/render/box.test.js @@ -26,13 +26,16 @@ describe('ol.render.Box', function() { document.body.removeChild(target); }); - describe('Constructor', function() { + describe('constructor', function() { it('creates an absolutely positioned DIV with a className', function() { expect(box.element_).to.be.a(HTMLDivElement); expect(box.element_.style.position).to.be('absolute'); expect(box.element_.className).to.be('ol-box test-box'); expect(box.element_.style.position).to.be('absolute'); }); + it('appends the DIV to the map\'s overlay container', function() { + expect(box.element_.parentNode).to.equal(map.getOverlayContainer()); + }); }); describe('#setPixels()', function() {