お願いがある。
Flash コンテンツにマウスホイールに依存するナビゲーションを実装するなら、Mac ユーザーのことも忘れないで欲しい。
Flash だけでは実装は困難だが、swfmacmousewheel.js を使うと実装できる。
Flash 側にいくつか Script が必要だったりするのでめんどうだと思ってしまいそうだけど、これからはそんな心配無しに取り入れることができる。
PIXEL BREAKER が ActionScript クラスとSWFObjectと一緒に使えるswfmacmousewheelをパッケージにして提供してくれている。
AS3.0 MouseWheel on Mac OS X
サンプルコードとデモがダウンロードできるのですぐに使うことができるはず。
Adobe Store, FWA Site Of The Day…などメジャーなサイトでもマウスホイール・ナビゲーションが使えないところはある。
これをきっかけに少なくなるといいな。
ActionScript, MacMouseWheel Class を import し setup。
ドキュメント・クラスでも良いらしい。
import com.pixelbreaker.ui.osx.MacMouseWheel; MacMouseWheel.setup( this.stage ); |
MOUSE_WHEEL MouseEvent をリスナー登録
stage.addEventListener( MouseEvent.MOUSE_WHEEL, mouseWheelHandler ); function mouseWheelHandler (event:MouseEvent) : void { trace(event.delta); } |
delta
プロパティは Flash Player 9.0.28から。
JavaScript をリンク。
<script type="text/javascript" src="js/swfobject.js"></script> <script type="text/javascript" src="js/swfmacmousewheel2.js"></script> |
SWFObject 設定
var vars = {}; var params = { scale:'noScale', salign:'lt', menu:'false' }; var attributes = { id:'testObject', name:'testObject' }; // give an id to the flash object swfobject.embedSWF("test_as3.swf", "flashContent", "550", "400", "9.0.28", "js/expressInstall.swf", vars, params, attributes ); swfmacmousewheel.registerObject(attributes.id); |