- ベストアンサー
FLASH内にHTMLタグを表示させる方法について
FLASHで作成するファイルの中に、HTMLタグを組み込むことは可能でしょうか? 調べたところ、jpg画像は外部からでも読み込めるということですが、 同じように、HTMLタグも読み込むことは出来ないのでしょうか? 組み込みたいタグは以下のようなものです。 <A HREF="URL" target="_blank">リンク先の名前</A> <img border="0" width="1" height="1" src="画像" alt=""> ご存知の方、よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
質問者が選んだベストアンサー
可能です。 ただし、Flash で利用できるタグは限られていますので、ブラウザと全く同じようにとはいきません。 <A> タグの href と target 、<IMG> タグの src ・ width ・ height はサポートされていますが、alt と border には対応していないようです。 Flash でサポートしているタグの詳細は、ヘルプをご参照ください。 <IMG> タグで画像を表示するには、HTML と複数行が有効になっているダイナミックテキストのテキストフィールドが必要です。 テキストフィールドを作り、Flash MX 以降をご利用の場合は「プロパティ」パネルで次のように設定してください。 ・タイプを「ダイナミックテキスト」にする ・行タイプを「複数行」にする ・「テキストを HTML としてレンダリング」ボタンを ON にする (行タイプのリストの横にある、” <> ”というデザインのボタンです) Flash 5 では、同様の機能が「テキストオプション」パネルにまとめられています。「複数行」を選択し、「 HTML 」の項目にチェックを入れてください。 ----------------------- ActionScript には、既存の HTML 文書を読み込んで表示する命令はありません。 しかし、外部テキストを読み込む時に、その文字列に HTML タグを付けておくことで、HTML を利用できます。 例えば、テキストファイル”html_test.txt”の中身が test=<A href='***.html' target='_blank'>リンク</A><BR><IMG src='**.jpg' width='○○' height='△△' align='left'>画像 とします。 このファイルを loadVariables か LoadVars オブジェクトで読み込み、ダイナミックテキストで表示します。 ステージに disp というダイナミックテキストフィールドがあり、表示する変数を txt としますと、LoadVars で読み込んで表示するスクリプトは次のようになります。 //Shift-JISで読み込む System.useCodepage = true; //テキストファイルの読み込み load_obj = new LoadVars(); load_obj.load( "html_test.txt" ); load_obj.onLoad = function( success ) { //ダイナミックテキストに表示 if( success ) { _root.txt = load_obj.test; } }; (↑各行頭に全角のスペースが入っています。コピーする際はご注意ください) LoadVars の場合は、読み込んだ変数は LoadVars オブジェクトのものになっています。 この変数をダイナミックテキストに表示するには、 ・読み込み完了後、「プロパティ」の「変数:」に指定した変数に値を代入 ・テキストフィールドの text または htmlText プロパティに代入 といった方法があります。 テキストフィールドを制御する TextField クラス( Flash MX の場合はオブジェクト)には、text と htmlText というプロパティがあります。 フィールド内に表示する内容を管理しているもので、書き換えることで表示内容を更新することができます。 HTML を利用する時は、htmlText プロパティの方を書き換えます。 例えば、上記のスクリプトでは //ダイナミックテキストに表示 if( success ) { disp.htmlText = load_obj.test; } としても同じです。