ExternalInterface.call()
ユーザの入力に対して動的にコンテンツを生成する場合、ExternalInterface.call()メソッドをよく使います。
すごい便利なんですけど、ハマリどころが多い気がするので、そのメモ。
と思ったら、すでにまとめられていましたので、
個人的にエラー出ちゃったパターンを紹介。
1.javascriptで呼び出すタイミング
swfオブジェクトが認識されていない段階で呼び出すとエラーになります。
また、swf側でaddCallbackが処理されていない段階で呼び出してもエラーになります。
swfのロードには時間が掛かることが多いので、初期設定はswf側から呼び出すのが安全な感じがします。
2.swfを埋め込むHTMLタグのid,nameの命名
Flash Playerのバージョンによっては、「-」ハイフンが使えなかったりするようです。
僕の場合は、「.」ドットや「/」スラッシュを入れると上手く動かなかったことがあります。
id,nameには極々普通の文字を使うのが良いですね。安全第一です。
ExternalInterface.call()ハマリどころリンク
http://tech.kayac.com/archive/externalinterface-check-point.html
http://www.starryworks.jp/cgi-bin/mt/mt-tb.cgi/89