JavaScript

jQueryのプラグインでCookieを扱う方法。

2010.02.11 / Notes

jQueryのプラグインを使うと、ブラウザのクッキーを簡単に扱えます。
実装するにはjQueryのコアと、「jquery.cookie.js」プラグインを読み込ませてから、「$.cookie」メソッドでクッキーの読み込み、書き込みの操作ができるようになります。
次のコードでは読み込み、書き込みごとに関数にして、「cookie-test」というクッキー名の値を操作しています。
クッキーの有効期限は「expires」の引数で、日にちを指定できます。

jquery.cookie.jsプラグインページ

SWFを表示しているURLの取得方法。

2010.02.06 / Notes

ActionScriptでSWFの置かれているパスではなく、実際に表示されているページのパスを取得するにはJavaScript、またはPHPとの連携で可能になります。

Javascriptの場合

ActionScriptからJavascriptの関数を実行する「ExternalInterface」で行えます。
HTML内に、パスの値を返すJavaScriptの関数を加えます。

ActionScriptではJavaScriptの関数を実行して、戻り値を変数に格納します。

PHP(&FlashVars)の場合

PHPでActionScriptに値を渡すには、FlashVarsを利用する方法が簡単です。
PHP内のFLASH埋め込みのコード内に、PHPで動的に取得したパス情報を、FlashVars経由でSWFに渡します。

ActionScriptではFlashVarsの値を「loaderInfo.parameters」で取り出します。

ブラウザ上でActionSctiptの簡易デバッグ。

2010.01.07 / Labs

ブラウザでFLASHを再生中、デバッグのためにパラメータなどを出力する方法です。
ActionScriptを制作中によく利用するtraceですが、ブラウザで再生中には実行することができません。そこでJavaScriptとの連携を利用して同様のことを実現します。
はじめにHTML内にJavaScriptで、引数を受け取りダイアログで表示するスクリプトを記述します。関数名は「flashTrace」としておきます。

次にActionScriptでは、JavaScriptの関数を実行するたスクリプトを記述します。引数の一つ目がJavaScriptの関数名で、二つ目が出力したいパラメータです。

これでブラウザで再生中に、ダイアログでActionScript内のパラメータを出力することができます。
ですが、このままだとFLASHで制作中のときには、traceも併記する必要が出てしまいます。その場合、下記のようにブラウザで再生かどうかを判定して、どちらか実行する関数にしておくと便利です。

ちなみにサーバへのアクセス(http://)ではなく、ブラウザで直接HTMLファイルを開いた場合(file://)には、FLASHのセキュリティでJavaScriptが実行されません。外部サーバではなくローカルで実行するには、Webサーバをローカル環境に構築する必要があります。

jQueryのプラグインでFLASHの埋め込み。

2010.01.05 / Notes

jQueryのプラグインを利用して、HTMLにFLASHを簡単に埋め込む方法です。短いコードで記述できるので、ソースコードがすっきりとして見やすくなります。

<head>タグ内にjQuery本体とjquery.flash.jsを読み込んで、div#flashに対して埋め込みの記述をします。
最低限必要なのはSWFファイルのパスのみで、width、heightは省略できます。

FLASHにパラメータを渡す場合は、次のようにflashvarsをオブジェクトで追加します。

jquery.flash.jsプラグインページ