こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

外部テキストにリンクを貼ると、今まで書いてきた文章が消えてしまいます。

外部テキストで日記を製作しているのですが、
例えばです。変数名「text」として、
外部テキストを読み込んでいるのですが、

text=11月26日<br><a href="http://www.yahoo.co.jp/" target="_blank">yahooのページ</a>日記の内容<br>
11月25日<br>
前日の日記

と記述をして確認をしたのですが、リンクを貼った
yahooのページという文字列にカーソルを持っていきロールオーバーをすると、11月26日の表示を残して、下の文章が消えてしまいます。
11月26日の後にある<br>を外すと、11月26日の文章も消えてしまうのです。

外部スタイルシートも使用しているので、その影響かな?と思いまして、外部のスタイルシートをフォルダの外に出してみても、<a href>を使用すると、同じような現象がおきてしまいます。
このような現象を回避するにはどうしたら良いでしようか?宜しくお願いします。

使用環境はflash mx2004
書き出しの設定はflash7 です。

投稿日時 - 2005-11-26 13:18:04

QNo.1802488

すぐに回答ほしいです

質問者が選んだベストアンサー

スタイルシートを適用させると
ロールオーバー時に文字が消える現象が起きました。
ただ私の場合ムービープレビューかスタンドアローンプレーヤーで見たときのみでHTMLに貼ってみたときはこの現象はおきませんでした。
何で見えなくなるか(traceでテキストフィールドを見てみたところ文字がなくなったわけではないようです)はわかりませんでした。

スタイルシートの設定は
テキストフィールドに外部テキストを読込む前にしなければなりません。
そうじゃないと外部テキスト読込んだ時点で
<p class="midashi">としても「midashiって何?」
ってことになってしまうので。

[dially.swf] ← diary?--------------------------

System.useCodepage = true;

var STYLE = new TextField.StyleSheet();
STYLE.onLoad = function(success) {
if (success) {
_root.msg.styleSheet = STYLE;
} else {
trace("styleError");
}
};
STYLE.load("style.css");
//

の後にテキスト読み込みですね。

あと#ffffffは白色です。背景も白いと見えなくなりますので注意です。

投稿日時 - 2005-12-01 00:07:15

ANo.4

このQ&Aは役に立ちましたか?

2人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.3

(。-`ω´-)ンー 謎です。
私のやり方は

[外部テキスト d.txt]---------------------------
text=11月24日<br>日記のタイトル1<br>
ここのサイトがオススメです。<a href="http://www.yahoo.co.jp/" target="_blank">yahoo!</a><br>
2005年11月21日<br>日記のタイトル2<br>
<img src="cookie.jpg" hspace="220">
<br>

[Flash フレームアクション]---------------------
System.useCodepage = true;
var load_lv = new LoadVars();
var msg_str = new String();
load_lv.onLoad = function(success) {
if (success) {
msg_str = load_lv.text;
msg_str = msg_str.split("\n").join("");//テキストの改行削除
msg_str = msg_str.split("\r").join("");
msg.html = true;
msg.htmlText = msg_str;
} else {
trace("error");
}
};
load_lv.load("d.txt");
//------------------------------------------
としています。
テキストフィールドの名前は[msg]でダイナミックテキスト、選択不可
Flashのステージサイズは550*400で
テキストフィールドもそのくらいのサイズです。
画像のサイズは100*100です。

投稿日時 - 2005-11-27 01:43:05

補足

お返事が遅くなりましてすみません。
perseさんから教えて頂きましたスクリプトを
コピー&ペーストをしましたところ、
無事に表示されました。
しかし、問題がまた、発生してしまいました。
今回作成した、dially.swfファイルを
main_manu.flaで作成している、メニューボタンを配置しているムービークリップ(movie)に読み込ませた所、以前と同じような現象が起きてしまいました。
ボタンのアクションは、単純に

on (release) {
loadMovie("dially.swf",movie);
}
としています。

それと、できれば、外部スタイルシートを使用したくて
System.useCodepage = true;
var load_lv = new LoadVars();
var msg_str = new String();
load_lv.onLoad = function(success) {
if (success) {
msg_str = load_lv.text;
msg_str = msg_str.split("\n").join("");//テキストの改行削除
msg_str = msg_str.split("\r").join("");
msg.html = true;
msg.htmlText = msg_str;
} else {
trace("error");
}
};
load_lv.load("d.txt");
//スタイルシートの適用
STYLE = new TextField.StyleSheet();
STYLE.load("style.css");
_root.movie.msg.styleSheet = STYLE;

と、perseさんから教えていただきましたスクリプトに
単純に付け加えたのですが、適用されていないみたいです(涙)。

外部のスタイルシート(style.css)の記述は、

/* CSS Document */
.midashi{color:#ffffff; font-size:20px; font-style:normal; text-align:center; font-family:"明朝";}
.moji{color:#ffffff; font-size:14px; font-style:normal; text-align:center; font-family:"明朝"; margin-left:10px;}

このように記述しています。

テキストの方の記述は
text=
<p class="midashi">2005年11月24日</p>ここのサイトがお気に入り♪<br>

<span class="moji">ここのサイトが最近おきにいりです。<a href="http://www.yahoo.co.jp/" target="_blank">yahooのページ</a></span>
<p class="midashi">2005年11月21日</p>日記のタイトル2<br>
<img src="cookie.jpg" hspace="220">
<br>

としています。
何だか、質問する内容が多くなってしまい、
スタイルシートの事まで御質問してしまい恐縮です。
何卒宜しくお願いします。

投稿日時 - 2005-11-27 21:24:49

ANo.2

text=11月24日<br>日記のタイトル1<br>
ここのサイトがオススメです。<a href="http://www.yahoo.co.jp/" target="_blank">yahoo!</a><br>
2005年11月21日<br>日記のタイトル2<br>
<img src="cookie.jpg" hspace="220">

も試してみましたが問題なく動作しました。

画像を挿入しているときにそのような現象が起こるのでしょうか?

投稿日時 - 2005-11-26 20:50:08

補足

度々ありがとうございます。

画像を挿入しているyahoo!の文字列に
リンクは貼れているのは確認できるのですが、
マウスをyahoo!の文字の上に乗せた後、
そのまま、ロールオーバーすると、
11月24日と
日記のタイトル1、前日の画像(cookie.jpg)のみを残して、

2005年11月21日
ここのサイトがオススメです。
yahoo!(リンクを貼った文字列)
日記のタイトル2
のテキスト文章がが消えてしまいます。

ここのサイトがオススメです。の後に
<br>を入れると、
"ここのサイトがオススメです。"の文字列は表示されるようになるのですが、その後の
yahoo!
日記のタイトル2は
表示されないままです。

画像を挿入する<img src="cookie.jpg" hspace="220">
を削除してみました所、ロールオーバーすると、文字が消えてしまうような現象は現れないのですが・・・
何でなのでしょうか?

ずっと試行錯誤していまして、解決策を見出せないでいます。度々お手数お掛けしますが宜しくお願いします。

投稿日時 - 2005-11-26 21:54:19

ANo.1

外部テキストに

text=11月26日<br><a href="http://www.yahoo.co.jp/" target="_blank">yahooのページ</a>日記の内容<br>
11月25日<br>
前日の日記

を書いてLoadVarsを使用して読込み、Htmlテキストフィールドに表示してみましたが、
そういう現象は起こりませんでした。
(Flash MX Pro2 2004)

外部から読込まないで表示したときでも同じ現象が起こるのでしょうか?

投稿日時 - 2005-11-26 15:03:24

補足

回答ありがとうございます。
説明不足な所があり、申し訳ありません。

text=11月26日<br><a href="http://www.yahoo.co.jp/" target="_blank">yahooのページ</a>日記の内容<br>
11月25日<br>
前日の日記

は自分も記述してみた所、正常に表示されました。

しかし、前日の日記に画像を挿入してまして、
画像(cookie.jpg)を挿入しています。
下の様な書き方をすると、画像は元のまま表示されるのですが、
日記のタイトル1以下のテキスト文章が消えてしまいます。
これは、何故なのでしょうか?
すみませんが、また、お力をお貸ししていただければ幸いです。
宜しくお願い致します。

text=11月24日<br>日記のタイトル1<br>
ここのサイトがオススメです。<a href="http://www.yahoo.co.jp/" target="_blank">yahoo!</a><br>
2005年11月21日<br>日記のタイトル2<br>
<img src="cookie.jpg" hspace="220">
<br>

投稿日時 - 2005-11-26 16:56:42

あなたにオススメの質問