Onmouseoverで別フレームにメッセージを表示したいのですがどうすればよいのでし
ょうか?
[上に]
[前に]
[次に]
ららら
[E-Mail]
2000/01/29(土) 14:52:23
こんにちわ、かなり初心者です。
こちらのページのアラカルトを見て、リンクにマウスを乗せると画像を変えたり、説明を出したりするというのを実戦してみて、無事できたのですが、
「説明を別フレームの、指定した場所に出したい」
という欲望がうまれました。で、やってみようと思ったのですが、なかなかできません。parentというのを、使うらしいという事までは分ったのですが、どこに入れたらできるのでしょうか、、、?
ソースを載せておきますので、御指摘いただけると光栄です。
<html>
<head>
<script LANGUAGE="JavaScript">
<!--
if (document.image) {
img1 = new Image(); img1.src = "botan3.GIF";
}
function setImage(img, image) {
if (img) {
img.src = image;
}
}
// -->
<!--
function show(id, flag) {
if (document.all) {
document.all.item(id).style.visibility = "visible";
}
if (document.layers) {
document.layers[id].visibility = "show";
}
}
function hide(id, flag) {
if (document.all) {
document.all.item(id).style.visibility = "hidden";
}
if (document.layers) {
document.layers[id].visibility = "hide";
}
}
// -->
</script>
</head>
<body bgcolor="#000000" onLoad="msgHide()">
<a href="../top.htm" TARGET="window2" onMouseOver="setImage(document.img1, 'botan3.GIF'); show('id1')" onMouseOut="setImage(document.img1, 'botan1.GIF'); hide('id1')">
<img SRC="botan1.GIF" NAME="img1" BORDER=0 ></a>
<span ID=id1 STYLE="visibility:hidden">
<layer NAME=id1 VISIBILITY="hide">
<b><i><font face="平成角ゴシック">
<font color="#4CC4FF"><font size=+4>『TOP』</layer></span>
</body>
</html>
パル
2000/01/29(土) 15:17:47
今、僕のやっていた事に近いですね(^^ゞ
↓表示したいフレームの名前
parent.f_msg.document.write("表示したい文"); //ここで表示
parent.f_msg.document.close(); //writeの後になるべく必要。
で、書けるはずです
parentの後に、文章を表示したいフレームの名前(f_msg)を書き
その後、document.write("ここに、表示したい文章を書く")
で書けます。
write()を使った後に、close()を使わないと、NN系のブラウザで
正常に表示されない事があるので注意して下さい。
write("<CENTER> test </CENTER>")等と、write()で書けるので
場所の指定などは、工夫して見て下さい(^^;;;・・・・・
ららら
2000/01/29(土) 16:29:10
パルさん、早速のお返事ありがとうございます。
がんばってみたんですがぁぁぁ、、、、、(-_-;)
何故でしょ?できません、、、(何故って馬鹿だからか、、、)
私のソースの場合、
parent.window2.document.write("『TOP』");
parent.f_msg.document.close();
と、書くということなのでしょうか、、、?
そうすると、『TOP』以降のソースが一緒に現われちゃうんですけど、、、??
なじぇ?(T_T)
ららら
2000/01/29(土) 16:31:05
↑間違ってました。
parent.window2.document.write("『TOP』");
parent.window2.document.close();
と、書くということなのでしょうか、、、?
そうすると、『TOP』以降のソースが一緒に現われちゃうんですけど、、、??
なじぇ?(T_T)
Mugi
[E-Mail]
[HomePage]
2000/01/29(土) 17:21:06
サンプル作りました:
変えるのは、レイヤーの非表示のところで、
parent.フレーム名.documet.〜 のようにします。
イメージの変更は、ファイル名の直接指定でしたがnew Image()を利用するようにしました。
その他多数の間違いがありましたが直してあります。
http://hp.vector.co.jp/authors/VA013453/js/000129/frame.htm
ららら
2000/01/29(土) 20:21:03
ありがとうございます!!!
出来ました〜〜〜〜〜〜〜!!!
あ〜、もう、なんと御礼を言っていいやら、、、。
で、、もう一つ宜しいでしょうか。。。。?
説明はフレームをこえて出るようになったのですが、
中央に配置したいのですが、senterを使ってもまん中に出てくれません。そこまでは、できないって事でしょうか?
ららら
2000/01/29(土) 20:22:06
↑また、間違えちゃった、、(-_-;)
そそっかしくて、すみません。
centerを、使ってもまん中に来てくれないのですが、
やり方が変なのでしょうか?
パル
[E-Mail]
2000/01/29(土) 20:31:17
らららさん、分かりにくい説明で混乱させてゴメンね(^^;;;
真ん中に表示させたい場合は
document.write("<center> 表示したい文字 </center>");
で、良かったと思いましたが?
う〜ん、もしかしたらスペルミスかもしれませんが(個人的に多い 汗)
Mugi
[E-Mail]
[HomePage]
2000/01/29(土) 20:48:45
パルさん、writeは使わずレイヤーの表示を切り替えています。
サンプルを更新しました。
普通にcenterタグでできました。
ららら
2000/01/29(土) 21:12:54
[[解決]]
Mugiさん、パルさん
ありがとうございます!
無事、できました。ふ〜〜〜〜。これに、二日も頭を悩ませましたが
早くここへ質問しておけば良かった、、、っていうか、しっかり勉強しろ!って感じですけど、、、。でも、大変勉強になりました。
長々と付き合っていただきまして、ありがとうございました!!!
[上に]
[前に]
[次に]