-
Notifications
You must be signed in to change notification settings - Fork 0
FlashReady
uupaa edited this page Oct 26, 2016
·
11 revisions
FlashDetector.js is located in global.WebModule.FlashDetector. To invoke more easily, it can also be placed in global.FlashDetector.
FlashDetector.js の名前空間は global.WebModule.FlashDetector です。 より手軽に呼び出せるように、global.FlashDetector に配置することも可能です。
- new FlashDetector - インスタンスを生成します
- FlashDetector#enabled - Flash が利用可能なら true を返します
new FlashDetector(options) は インスタンスを生成して返します。
options に指定可能な値は以下の通りです。
options | default value | |
---|---|---|
id:String | "external" + Date.now() | Flash のコンテナとなる Object の ID( <object id="..."> ) を指定します |
swf:URLString | "./FlashDetector.swf" | 判別に使用する swf のパスを指定します |
timeout:Number | 1000 | 判別処理のタイムアウト時間を ms で指定します |
callback:Function | null | 判別完了または判別失敗(タイムアウト)でコールバックする関数を指定します |
container:Node | document.body | 判別で使用する <object> の親Nodeを指定します |
options.callback を指定すると、判別完了または判別失敗(タイムアウト)のタイミングで callback(enabled:Boolean):void の形でコールバックします。enabled が true なら Flash を利用できます( FlashDetector#enabled と同じ情報です )。
判別は options.swf に指定した 1kb の FlashDetector.swf を実際に読み込む事で行います。 ブラウザ側でブロックされた場合や、一定時間(options.timeout)が経過した場合は判別失敗となります。
window.onload = function() {
var flash = new FlashDetector({
timeout: 2000, // 2sec
swf: "swf/FlashDetector/bin/FlashDetector.swf",
callback: function(enabled) {
console.log(flashEnabled === flash.enabled); // -> true
alert(flash.enabled);
}
});
}
FlashDetector#enabled:Boolean は、Flash が利用可能なら true を返します。 デフォルト値は false です。判別完了前は false を返します。