瀏覽代碼

Merge pull request #10072 from fredludlow/mousewheel-deltamode

Detect deltaMode - fixes IE11/FF49/Chrome54 on Win7, see #9526
Mr.doob 8 年之前
父節點
當前提交
bf5a2b9f86
共有 1 個文件被更改,包括 19 次插入2 次删除
  1. 19 2
      examples/js/controls/TrackballControls.js

+ 19 - 2
examples/js/controls/TrackballControls.js

@@ -218,7 +218,7 @@ THREE.TrackballControls = function ( object, domElement ) {
 			if ( factor !== 1.0 && factor > 0.0 ) {
 
 				_eye.multiplyScalar( factor );
-				
+
 			}
 
 			if ( _this.staticMoving ) {
@@ -473,7 +473,24 @@ THREE.TrackballControls = function ( object, domElement ) {
 		event.preventDefault();
 		event.stopPropagation();
 
-		_zoomStart.y -= event.deltaY * 0.01;
+		switch ( event.deltaMode ) {
+
+                        case 2:
+                                // Zoom in pages
+                                _zoomStart.y -= event.deltaY * 0.025;
+                                break;
+
+			case 1:
+                                // Zoom in lines
+				_zoomStart.y -= event.deltaY * 0.01;
+				break;
+
+			default:
+				// undefined, 0, assume pixels
+				_zoomStart.y -= event.deltaY * 0.00025;
+				break;
+
+		}
 
 		_this.dispatchEvent( startEvent );
 		_this.dispatchEvent( endEvent );