レンジでお馴染みのAluさんがくだらない(と自ら書いてた)社内向けFlashを作っていたのですが、マウスホイールのイベントがFirefoxだと2倍になっちゃって困る(わたしはそんな現象あるなんて知らなかった)よ!ムキー!と言うので調べてみました。
IEとかチョロメとかは問題ないのですが、FirefoxだとMOUSE_WHEELイベントが2回ずつ発生するみたいです。それは困る。
超絶ググってたのですがなかなか情報見つからなくて、困った時のwithout日本語検索で見つけたのがここ。
わたしは簡単な英語しかわかりませんが、ASで何が書いてあるのかはわかるので、ASも言語なんだなあって実感しますね!
んでそれを元にこんなコードを書いてみました。
stage.addEventListener(MouseEvent.MOUSE_WHEEL, wheelHandler);
var lastTimeWheel:Number = 0;
function wheelHandler(e:MouseEvent) {
var now:Number = new Date().getTime();
if (now-lastTimeWheel) {
//ここに処理を入れればいいんだよ
trace("delta: " + e.delta + "\tmillis: " +(now-lastTimeWheel).toString());
}
lastTimeWheel = now ;
}
結果、上手くいったようです。わたしも勉強になりました。...φ(.. )
余談ですがそのFlash、落武者の作品ですか?の問いに対してソッコー否定されてました。落武者のサーバにアップされてましたけどね。
最近のコメント
順加(2009/08/07-23:39)
nobu(2009/08/07-23:35)
順加(2009/07/29-00:25)
無學童子(2009/07/29-00:22)
順加(2009/03/01-22:59)