カテゴリー
未分類

progression検証 #19 progression.jsを使用した際のSWFForceSizeの挙動不審

ちとはまったのでメモ。
swfの最小表示領域を確保したい場合にSWFForceSizeを使用するのですが、それがIEで上手く動作しなくてフガフガしてた。現としては
・設定ウインドウサイズになってもスクロールが表示されない
・最初に小さいウインドウで表示させた後に、ウインドウを拡大してもサイズが変わらない。
・縦サイズのみスクロールバーが表示され、横方向は表示されない。
等、上手く動作するときもあれば、上記のようなバラの挙動を示していた。
SWFObject2.0でSWFForceSizeを使う | FlashやWebにまつわるいろいろなことが原因かな?とも思ったのだけど、ちと違う。そもそもSWFForceSize.onResizeDivが発動していない。
.jsの中を確認してみると”/contents/objects/version.swf”を用いてバージョンチェックを行って、progression.onLoadを。その中でswfObject,SWFForceSizeを定義するってのがデフォルトの流れ。
SWFForceSize内部では定義時に

this.addWindowEvent( 'onload', this, this.onLoadDiv );

をセットしてを行うようにしている。
んがprogression.onLoadの発動ミングによって、document.onload後にSWFForceSizeが定義される可能性があり、そこが多分の原因なのではないだろうか?と思う。(違ったらごめん)
単純に考えて”prog.onLoad”の一番最後にdocument.onLoad()を強制的にCALLしてやれば上手く動くかな?と思ったのだけど、横方向のスクロール制御が不能になったりしたので断念。
外部JSの読み込みのタイミング等に依存しているのか上手く動いたり動かなかったりという定な挙動をしめすので一度Progression.jsをはずした形で実装を進めてみることにする。
落ち着いたらも少し調べてみる。

コメントを残す

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