progressionでindex.html#に飛んだときのブラウザの挙動の回避法

progression(というかswfAddress?)でトップページを/indexにしてしまうと、他ページからトップへ戻るときにURLが「index.html#」となってしまうため、ブラウザウィンドウがトップまでスクロールしてしまいます。
 
以下がその例。(一番下にメニューボタンがあるのでHOMEを押してみてください)

・Sample01
 
PAGE1やPAGE2など、他のページへの遷移時にはブラウザがスクロールしないのに、HOMEへ飛んだときだけブラウザがスクロールします。
 
Flashやjavascriptでなく、htmlを変更することでこの挙動を回避できる方法を偶然見つけました。
条件は限られますが、方法はめちゃくちゃ簡単。swfObjectで代替されるスタイルシートのdivのidをbody直下のものにするだけです。progressionで言うと、body直下のidは”content”ですが、これを”flashcontent”に変更します。
 
・Sample02(swfファイルはSample01と同じものです)
 
中身良くわかってない上での回避法なので、一応変更時には他に不具合が発生しないか良くチェックしてみてください。htmlを変更するので当然noflaの表示などはCSSの調整が必要です。

トラックバック URL :