SWFWheel
SWFMacMouseWheelがちょっとしっくり来ない人のためのライブラリ。
ライセンス
とりあえず以下のライセンスを適応させています。
使用される環境に合ったライセンスを選んで頂いてかまいません。
ソースコード
対応ブラウザ
以下のブラウザでの動作を確認しております。
Windows
- IE 6, 7, 8
- Firefox 2, 3
- Safari 3
- Opera 9
- Chrome 0.3, 0.4, 1.0
Mac OSX
- Firefox 2, 3
- Safari 2, 3
- Opera 9
- Camino 1.6
- Stainless 0.4, 0.5
使い方
JavaScriptのソースコードはActionScriptに埋め込んであるため、個別にJavaScriptファイルを読み込ませる必要はありません。
- しかるべき場所にインポート。
- Stageのインスタンスを引数に渡してinitializeメソッドをコール。
import org.libspark.ui.SWFWheel; SWFWheel.initialize(stage);
- ロジック内でExternalInterface#objectIDを使用してますので、HTML上ではobjectタグにはname属性・id属性の両方を、embedタグにはname属性を明示的に指定するようにしてください。
その他
外部ドメインからの読み込み
SWFWheelを使ったswfファイルを、外部ドメインから読み込む場合、HTML側とActionScript側の両方でExternalInterfaceの動作を明示的に許可する必要があります。
- HTML側にて、paramタグ及びembedタグでallowScriptAccessの値にalwaysを指定する。
- ActionScript?側にて、Security.allowDomain等で許可するドメインを指定する。
詳しくはHTML と SWF のドメインが異なると SWFWheel がエラーの方も併せてご覧ください。
Safari・Stainless問題
Safari@MacやStainlessでMacBookなどのトラックパッドを使用した場合、微妙にブラウザが反応してしまいます。
swfobject 2
- attributesでidとnameを指定します。
- ExternalInterface#objectIDの挙動が、ブラウザによって違うらしく、objectタグであっても、FirefoxやSafariではname属性を見るようです。
var flashvars = {};
var params = {};
var attributes = {
id: "myDynamicContent",
name: "myDynamicContent"
};
swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0", "expressInstall.swf", flashvars, params, attributes);
バグ・不具合
バグ・不具合を発見された方、意見・要望等をお持ちの方は、気軽にチケット登録して頂けるとありがたいです。 その際には、お使いの環境を一緒に記載して頂けると助かります。 また、SWFWheelはメンテナ・テスタになってもらえる方を募集しています。全てのブラウザをサポート出来たら素敵だと思いませんか?

