瀏覽代碼

Allow the use of TransformControls simultaneously with other controls

by invoking event.preventDefault() and event.stopPropagation() only if the control is actually involved.
Sébastien Valette 10 年之前
父節點
當前提交
8003892bc5
共有 1 個文件被更改,包括 5 次插入5 次删除
  1. 5 5
      examples/js/controls/TransformControls.js

+ 5 - 5
examples/js/controls/TransformControls.js

@@ -726,8 +726,6 @@
 
 			if ( scope.object === undefined || _dragging === true ) return;
 
-			event.preventDefault();
-
 			var pointer = event.changedTouches ? event.changedTouches[ 0 ] : event;
 
 			var intersect = intersectObjects( pointer, scope.gizmo[_mode].pickers.children );
@@ -738,6 +736,8 @@
 
 				axis = intersect.object.name;
 
+				event.preventDefault();
+
 			}
 
 			if ( scope.axis !== axis ) {
@@ -754,9 +754,6 @@
 
 			if ( scope.object === undefined || _dragging === true ) return;
 
-			event.preventDefault();
-			event.stopPropagation();
-
 			var pointer = event.changedTouches ? event.changedTouches[ 0 ] : event;
 
 			if ( pointer.button === 0 || pointer.button === undefined ) {
@@ -765,6 +762,9 @@
 
 				if ( intersect ) {
 
+					event.preventDefault();
+					event.stopPropagation();
+
 					scope.dispatchEvent( mouseDownEvent );
 
 					scope.axis = intersect.object.name;