よんちゅBlog

― このブログは自分用のメモや日々の問題などを共有するためのものです ―

20121005185841 お知らせ:  2013/07/17 ブログデザインをリニューアルしました。

【Flex】IE使用時にタイトルが勝手にURLに書き換わる現象について

Flexで作成したFlashを閲覧している際、タブナビゲータ(TabNavigator)などをクリックするとタイトルがURLに変わってしまう現象が発生してしまうようです。

これはFlash内の特定のコンポーネントをクリックした際に、URLの末尾にシャープ(#)付きの付加情報が自動的に付与されてしまうことで起きるようです。
ちなみに、URLの末尾に#を付けた情報のことを、アンカーハッシュ等と言うのですが、通常はWEBページのページ内移動などに使われたりします。

Flexではこのアンカーハッシュを用いて、ブラウザの戻る/進むボタンに対応した履歴管理を行っているため、特定のコンポーネントをクリックした際にアンカーハッシュが自動的に付与されるわけです。

しかし、このFlexデフォルトの履歴管理機能は結構微妙でそのままだとあまり役に立たなかったりします。
というわけで、Flex使用時に履歴管理なんていらないよっ!という方は下記のように設定することで履歴管理機能をオフにして、IEのタイトルが勝手に変更されてしまう問題を回避するとよいでしょう。

設定方法

Flexのプロジェクトを右クリックし、プロパティを選択しダイアログを開きます。
そしてFlexコンパイラを選び下記の赤丸の付いている項目のチェックを外します。
これだけです。

ちなみに、上記の設定を変更すると、html-template/index.template.html 内の下記の行が削除されます。

<!--  BEGIN Browser History required section -->
<link rel="stylesheet" type="text/css" href="history/history.css" />
<!--  END Browser History required section -->

<!--  BEGIN Browser History required section -->
<script src="history/history.js" language="javascript"></script>
<!--  END Browser History required section -->