登録: 2 年 前
最終更新: 2 年 前
Flex コンポーネントとの相性の問題かも知れないのですが、 1 未満のデルタは 1 にするのが心地良い気がします。 (動きだしがスムーズ、トラックパッドのスクロールによる誤作動が少ない、など)
現状の実装は、最後に int(delta) と書いているので、1 未満の delta は 0 になっているので、 これを 1 にしてやるか、小数点第一位を四捨五入するようにしてやっても良いのかも知れません。
例)int(delta) -> normarizeDelta(delta)
private static function normarizeDelta(value:Number):int { var delta:Number; if (value < 1 && value > 0) delta = 1; else if (value > -1 && value < 0) delta = -1; else delta = value; return int(delta); }
報告ありがとうございます!
色んなトコロで Safari4 での delta の値がオカしいとの報告を頂いていたのですが、 手元の環境では再現出来ずに困っていました。 もしこの方法でスッキリ解決するのであれば、この delta 0 は delta 1 にするって方法で行こうと思います!
fp10.1 で、 Safari@Mac など一部のブラウザで MOUSE_WHEEL なイベントを受け取れるようになりましたね! で、そこで発覚したのですが、ネイティブなイベントでも delta=0 な問題が発生してしまうんです。 となると、そこは SWFWheel で補正する範囲を越えてしまうので、この問題は保留する事にします。
delta のとりうる範囲の調整は今後も続けていきたいと思うので、 またなにか問題があれば、どんどこ報告をお待ちしております :-)