人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

FlashのpluginがインストールされているがOFF状態の検出は可能なのでしょうか?

var hantei = function () {

if (navigator.plugins["Shockwave Flash"]) {
return true;
}
try {
new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
return true;
} catch (a) {
return false;
}

}()

こんな感じで値を返しているのですが、
Chromeでプラグインを切っても var hantei に 'true'が返されます。

IE9だと false を返します。ご存知の方ご教示下さい。

●質問者: soyuz11
●カテゴリ:ウェブ制作
○ 状態 :キャンセル
└ 回答数 : 1/1件

▽最新の回答へ

1 ● Cherenkov

win chrome18.0.1025.162m, flah player 11.2.202.233 で動作確認。

navigator.plugins["Shockwave Flash"]

chromeでpluginを切るとundefinedが返ってきました。
(about:pluginsでchromeに内蔵されているものとシステムの2つとも無効にする。)
ウェブサイトからflash pluginがインストール済みかどうかの検出は無理だと思います。


SWFObject v2.0 ドキュメント日本語訳|Media Technology Labs (MTL) : メディアテクノロジーラボ
(回答内容と直接関係ない)
SWFObjectにはswfobject.getFlashPlayerVersion()のようにバージョン(プラグインの有効判定)を取得するAPIがありますね。


soyuz11さんのコメント
ん?結局無理だと言うことですか??

Cherenkovさんのコメント
たぶん無理。 「Chromeでプラグインを切っても var hantei に 'true'が返されます」は要確認。

Cherenkovさんのコメント
普通はflashがインストールされているべきものとして有効ならどうするといった処理を書けばいいと思うのですが、解決したいことはOFF状態かどうかではなく、ipad判定とかですか?

soyuz11さんのコメント
えっと、普通にプラグイン判定をして、 あればswfを、なければ静的コンテンツを見せたいのですが、 swfがインストールされている時点で「ある」になっていて、 ここまでは値の有無で判定できるのですが、 chromeでプラグイン切っても「ある」になってしまって、 結果、静的ページもswfも見られないブランク状態になってしまうんですよ。 なので、プラグインはあるけどオフになっていないか判定できたら これが回避できるかなと。

Cherenkovさんのコメント
こちらの環境では「chromeでプラグイン切っても「ある」」にはならないです。

soyuz11さんのコメント
chrme 18.0.1025.162 m なんですが、なってしまうんですよコレが。 他のIE,FF,Opera,Safariは[ない]なんですけどね。。。 まあ、あるなし議論は不毛なので、 要はIEで言うアドオンのON/OFF取得できるパラメータとかは ないのかな…と期待して質問した次第です。
関連質問

●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ