WEB/システム/IT技術ブログ

ActionScriptでブラウザ判定をする

AS3でブラウザ判定をしたかったので、調査メモです。

ActionScriptはクライアントで動作するスクリプトなので、ブラウザ情報を取得できるはず、ということで調べてみました。
結果、どうやらActionScript自体にはブラウザを判定するクラスは用意されていないようです。その代わり、外部APIとやりとりするための「ExternalInterface」というクラスが用意されており、これを利用してJavaScriptの関数を呼び出したり、逆に呼ばれたりといった処理が実現できます。

具体的には、ブラウザを判定するために、JavaScriptの「window.navigator.userAgent」を呼び出します。

var res = ExternalInterface.call("window.navigator.userAgent.toLowerCase");
if (res.indexOf("msie") > -1) {
trace("Internet Explorerです");
} else if (res.indexOf("firefox") > -1) {
trace("Firefoxです");
} else if (res.indexOf("opera") > -1) {
trace("Operaです");
} else if (res.indexOf("chrome") > -1) {
trace("Google Chromeです");
} else {
trace("Otherです");
}

もう少し深く切り込めば、AS3とAjaxの連携もできそうですね。
いや、そもそもRIAを作るときはFlashかAjaxを選択するべきで、両者を連携させて構築するなんて、めんどくさそうですね。

B!

Comment

コメントする

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

Monthly Archives