MouseWheelイベントでトラップに引っかってしもーた\(^o^)/
MouseWheelがどっちにスクロールしたかなんてのは、
MouseEvent#deltaの32ビット目を見ればわかると思って
イベントハンドラの中で、こんな風にロジック書いちゃった
if(event.delta < 0) {
・
・
・
} else {
・
・
・
}
Windows+マウスでテストしたら、ゼンゼンOKだったんだけど、
MacBookで試してみたら罠が待ち受けてた!!
MouseWheelイベントだから、当然上か下かにスクロールされたときに発生するはずじゃん
つまり、delta=0なんてありえないじゃん!!
プログラム
タッチパッドに指を2本添えて(←ココ重要)、適当に前後に動かす。
結果
0とかまじ自重しろ!!!
イベントハンドラの先頭に、
if(event.delta==0) return
を加えるとマウスのと同じ動きをしてくれるようになりました。
MouseWheelがどっちにスクロールしたかなんてのは、
MouseEvent#deltaの32ビット目を見ればわかると思って
イベントハンドラの中で、こんな風にロジック書いちゃった
if(event.delta < 0) {
・
・
・
} else {
・
・
・
}
Windows+マウスでテストしたら、ゼンゼンOKだったんだけど、
MacBookで試してみたら罠が待ち受けてた!!
MouseWheelイベントだから、当然上か下かにスクロールされたときに発生するはずじゃん
つまり、delta=0なんてありえないじゃん!!
プログラム
<?xml version="1.0" encoding="utf-8"?> <mx:WindowedApplication xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" mouseWheel="trace(event.delta)"> </mx:WindowedApplication>
タッチパッドに指を2本添えて(←ココ重要)、適当に前後に動かす。
結果
-2 -2 0 0 0 -6 0 0 4 0 0 0 0 -5 0 0
0とかまじ自重しろ!!!
イベントハンドラの先頭に、
if(event.delta==0) return
を加えるとマウスのと同じ動きをしてくれるようになりました。
