Jelajahi Sumber

Added 'wheel' event as mousewheel has been deprecated in chrome. (#9526)

* Added 'wheel' event as mousewheel has been deprecated in chrome.

When using with Mac and OSX trackpad, orbit controls no longer works in chrome, but safari is fine. Traced it to orbit controls not registered the 'wheel' event.

* Add event listener for 'wheel' due to change in Chrome.
James Kent 9 tahun lalu
induk
melakukan
4cf5fb08ea

+ 1 - 0
examples/js/controls/OrbitControls.js

@@ -891,6 +891,7 @@ THREE.OrbitControls = function ( object, domElement ) {
 
 	scope.domElement.addEventListener( 'mousedown', onMouseDown, false );
 	scope.domElement.addEventListener( 'mousewheel', onMouseWheel, false );
+	scope.domElement.addEventListener( 'wheel', onMouseWheel, false); //Chrome has dropped support for mousewheel. 
 	scope.domElement.addEventListener( 'MozMousePixelScroll', onMouseWheel, false ); // firefox
 
 	scope.domElement.addEventListener( 'touchstart', onTouchStart, false );

+ 1 - 0
examples/js/controls/TrackballControls.js

@@ -603,6 +603,7 @@ THREE.TrackballControls = function ( object, domElement ) {
 	this.domElement.addEventListener( 'contextmenu', contextmenu, false );
 	this.domElement.addEventListener( 'mousedown', mousedown, false );
 	this.domElement.addEventListener( 'mousewheel', mousewheel, false );
+	this.domElement.addEventListener( 'wheel', mousewheel, false);
 	this.domElement.addEventListener( 'MozMousePixelScroll', mousewheel, false ); // firefox
 
 	this.domElement.addEventListener( 'touchstart', touchstart, false );