use the mousewheel handler
This commit is contained in:
@@ -504,12 +504,24 @@ ol.Map.prototype.setViewport = function() {
|
||||
'class': 'ol-viewport',
|
||||
'style': 'width:100%;height:100%;top:0;left:0;position:relative;overflow:hidden'
|
||||
}));
|
||||
var dragHandler = new ol.handler.Drag(this, this.viewport_);
|
||||
this.registerDisposable(dragHandler);
|
||||
this.initHandlers();
|
||||
}
|
||||
goog.dom.appendChild(this.container_, this.viewport_);
|
||||
};
|
||||
|
||||
/**
|
||||
* Init the map event handlers.
|
||||
*/
|
||||
ol.Map.prototype.initHandlers = function() {
|
||||
goog.asserts.assert(!goog.isNull(this.viewport_));
|
||||
|
||||
var dragHandler = new ol.handler.Drag(this, this.viewport_);
|
||||
this.registerDisposable(dragHandler);
|
||||
|
||||
var mouseWheelHandler = new ol.handler.MouseWheel(this, this.viewport_);
|
||||
this.registerDisposable(mouseWheelHandler);
|
||||
};
|
||||
|
||||
|
||||
ol.Map.prototype.createRenderer = function() {
|
||||
var Renderer = ol.renderer.MapRenderer.pickRendererType(
|
||||
|
||||
@@ -38,7 +38,7 @@ ol.control.Navigation.prototype.activate = function() {
|
||||
// navigation control.
|
||||
var target = this.map_.getParentEventTarget();
|
||||
goog.events.listen(target, 'drag', this.moveMap, false, this);
|
||||
goog.events.listen(target, 'scroll', this.zoomMap, false, this);
|
||||
goog.events.listen(target, 'mousewheel', this.zoomMap, false, this);
|
||||
}
|
||||
return active;
|
||||
};
|
||||
@@ -49,7 +49,7 @@ ol.control.Navigation.prototype.deactivate = function() {
|
||||
if (inactive) {
|
||||
var target = this.map_.getParentEventTarget();
|
||||
goog.events.unlisten(target, 'drag', this.moveMap, false, this);
|
||||
goog.events.unlisten(target, 'scroll', this.zoomMap, false, this);
|
||||
goog.events.unlisten(target, 'mousewheel', this.zoomMap, false, this);
|
||||
}
|
||||
return inactive;
|
||||
};
|
||||
@@ -76,7 +76,7 @@ ol.control.Navigation.prototype.zoomMap = function(evt) {
|
||||
|
||||
var map = me.map_,
|
||||
step = evt.deltaY / Math.abs(evt.deltaY);
|
||||
map.setZoom(map.getZoom()-step, map.getEvents().getPointerPosition(evt));
|
||||
map.setZoom(map.getZoom()-step, evt.position);
|
||||
// We don't want the page to scroll.
|
||||
evt.preventDefault();
|
||||
return false;
|
||||
|
||||
Reference in New Issue
Block a user