カテゴリー
Develop 未分類

flash.external.ExternalInterface

icon_flash8.jpg.external.ExternalInterfaceでを叩く際に、window.open系が入っているとによってがあるっぽい。
1)Safariだと「ポップアップをブロック」に引っかかってしまい、windowが開かれない。
2)win + だと「新規ウインドウをタブに開く」と設定していれば問題ないが、新しいウインドウを立ち上げるとcallとFlash内のアクションがする場合がある。
というような感じ。
解決策は・・・


1)についてはブラウザによってポップアップブロックの判定基準が良くわからないのでなんともいえないが、従来どおりgetURLを用いてJSにすることで回避できる。
2)はちょっとややこしくて、callと同時に発動しているFlash内のほかのアクションから少し遅らせて(オデは10ms)callすることで元のFlashが固まることを回避できる。ただこの場合SafariはNGなので、どっちにしても1)の解決策を用いるしかない。
ちなみにhashをいじったりするJSをgetURL経由で行っているとwin+IEとか制御不能になるので、window.open以外でJSにアクセスする場合はできるだけflash.external.ExternalInterfaceを用いたほうが良いかと思います。
さて今日も朝日がまぶしいです。

「flash.external.ExternalInterface」への2件の返信

特にSafariが・・・・汗
オデのiBookもうHDDが壊れたっぽくてMACが起動しません・・・。
(BootcampのWinは起動するのに・・・w)

コメントを残す

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