X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=0.6.x%2Fjs%2F01_dom%2F12_XDomEvent.js;fp=0.6.x%2Fjs%2F01_dom%2F12_XDomEvent.js;h=f47933897fcc085ea292d2305ca43058c7ddeba9;hb=0eaaa84ad608663f26fff366dacc9ab785d2dfe2;hp=7c259300a27314e4f70c100f8a0998b83cf5cf18;hpb=d3bd48b05c1f862dafaa3fb42a4ca155548b548e;p=pettanr%2FclientJs.git diff --git a/0.6.x/js/01_dom/12_XDomEvent.js b/0.6.x/js/01_dom/12_XDomEvent.js index 7c25930..f479338 100644 --- a/0.6.x/js/01_dom/12_XDomEvent.js +++ b/0.6.x/js/01_dom/12_XDomEvent.js @@ -46,17 +46,23 @@ if( !X.UA.IE || 9 <= X.UA.IE ){ // axis // https://w3g.jp/blog/tools/wheelevent_crossbrowser // ホイール系イベント2014年版クロスブラウザ + if( e.deltaY ){ + this.deltaX = e.deltaX; + this.deltaY = e.deltaY; + } else if( e.wheelDeltaY !== undefined ){ - this.wheelDeltaX = e.wheelDeltaX / 12; - this.wheelDeltaY = e.wheelDeltaY / 12; + this.deltaX = e.wheelDeltaX / 120; + this.deltaY = e.wheelDeltaY / 120; } else if( e.wheelDelta !== undefined ){ - this.wheelDeltaX = this.wheelDeltaY = e.wheelDelta / 12; + this.deltaX = 0; + this.deltaY = e.wheelDelta / 120; } else if( e.detail !== undefined ){ - this.wheelDeltaX = this.wheelDeltaY = - e.detail * 3; + this.deltaX = 0; + this.deltaY = e.type === 'MozMousePixelScroll' ? e.detail / 15 : e.detail; // 3 } else { - this.wheelDeltaX = this.wheelDeltaY = 0; + this.deltaX = this.deltaY = 0; }; if( /* e.constructor === window.TouchEvent || */ e.touches /* for iOS3.13 */ ){ @@ -156,7 +162,8 @@ if( !X.UA.IE || 9 <= X.UA.IE ){ btn & 2 ? 3 : 0; // 左:1(click:0), 中:4, 右:2 }; this.button = this.which - 1; - this.wheelDeltaX = this.wheelDeltaY = e.wheelDelta / 12; + this.deltaX = 0; + this.deltaY = e.wheelDelta / 12; }; }; @@ -197,21 +204,22 @@ X.Dom.Event.Rename = {}; X.Dom.Event.RenameTo = {}; // https://github.com/georgeadamson/jQuery.prefixfree-events/blob/master/jQuery.prefixfree-events.js // https://developer.mozilla.org/en-US/docs/Web/Events/wheel -// - -// DOMMoseScroll -if( X.UA.Gecko && window.MouseScrollEvent ){ - if( 2 <= X.UA.Gecko || ( 1.9 < X.UA.Gecko && 1 <= X.UA.GeckoPatch ) ){ // Gecko 1.9.1+ (firefox3.5+) - console.log( 'wheel <= MozMousePixelScroll' ); - X.Dom.Event.Rename[ 'mousewheel' ] = 'MozMousePixelScroll'; +// +if( document.onwheel === undefined ){ + // DOMMoseScroll + if( X.UA.Gecko && window.MouseScrollEvent ){ + if( 2 <= X.UA.Gecko || ( 1.9 < X.UA.Gecko && 1 <= X.UA.GeckoPatch ) ){ // Gecko 1.9.1+ (firefox3.5+) + console.log( 'wheel <= MozMousePixelScroll' ); + X.Dom.Event.Rename[ 'wheel' ] = 'MozMousePixelScroll'; + } else + if( 0.9 < X.UA.Gecko && 7 <= X.UA.GeckoPatch ){ // Gecko 0.9.7+ (NN6.2+?) + console.log( 'wheel <= DOMMouseScroll' ); + X.Dom.Event.Rename[ 'wheel' ] = 'DOMMouseScroll'; + }; } else - if( 0.9 < X.UA.Gecko && 7 <= X.UA.GeckoPatch ){ // Gecko 0.9.7+ (NN6.2+?) - console.log( 'wheel <= DOMMouseScroll' ); - X.Dom.Event.Rename[ 'wheel' ] = 'DOMMouseScroll'; - }; -} else -if( document.onmousewheel !== undefined ){ - X.Dom.Event.Rename[ 'wheel' ] = 'mousewheel'; + if( document.onmousewheel !== undefined ){ + X.Dom.Event.Rename[ 'wheel' ] = 'mousewheel'; + }; }; if( window.onwebkitanimationend !== undefined && window.onanimationend === undefined ){