いやね、もう2年前に「SWFを埋め込んでいるHTMLのパス」でウニャウニャやってたんだけど、まぁ一応解決したので(といっても1年以上前ですが)書いておきます。
想定しているディレクトリ構造は以下のような感じ。
/index.html
└swf/index.swf
EMBED タグ、OBJECT タグのオプションの”base”を使うと何とかなりそうというのは、以前から言われていて、これにbase=”.”とすることでFlash内に記述されたパスがSWFの格納されている場所からの相対パスになり、開発環境プレビューとHTMLからの両方で閲覧は出来るようになります。ただしこの場合ローカル環境でHTMLと連動させる場合何故か表示されず、JSとの連動とかしている場合など結構うっとおしい。最近特にexternalとかを用いてJSを密接に連動することが多いので、その辺ローカルで作業できるに越したことはねえかなと・・。
で、この場合
base=”swf/”
と設定することでローカル環境でindex.htmlを閲覧しても正常に表示されます。
で、flashの中は/swfを基点と考えてswfフォルダ内にあるcontent.swfとかをloadする場合は
loadMovie(“content.swf”);
の記述でOK。(ま、これはbase=”.”と同じですね。)オーサリング環境からのプレビューで動作すればローカルでもサーバでもindex.htmlから動作確認は取れるかと・・。
しかし何故にbase=”.”で正常に動作しないのか良くわからなかったのですが・・・。
世の中AS3で盛り上がっているときに今更な内容のエントリーを書いているあたりがかなりやばい感じです(エヘヘ 自分専用なんちゃってAS3フレームワークを作るにあたり色々過去のリソースを整理しております。あとはフォントの埋め込み範囲指定での共有ライブラリ化とかのノウハウとかも一応整理しておこうかなと・・。(AS3になってなんか変わっていたりして・・)
っつーかこないだストリングパネル(多元語化)の存在をしってちょっと泣きそうになりました。
まぁでもこれは結局textFormatなりCSSなりも切り替えないといけないので、従来どおり多言語管理Classを作ったほうが簡単そうだと自分を思い込ませることにしました。