アプリ版:「スタンプのみでお礼する」機能のリリースについて

メモ帳を使って、タグ打ちでHPを製作しています。

インラインフレームを使っているページにリンクする際に、下のようなことがしたいのですが、方法が分かりません。

インラインフレームを指定しているページを【A】とします。
【A】内に<a href=>タグでインラインフレームにターゲットを指定し、ページ【B】と【C】を表示させます。
【A】では<iframe src=>タグでページ【B】を指定します。
他ページからページ【A】に行くと、はじめには【B】が表示されると思います。

ここで、他ページからページ【A】に移動する際に、始めに【A】内にページ【C】を表示させたいのです。

普段はもちろん、ページ【B】を表示させるのですが、例外として【C】を表示させたいのです。

説明が難しいのですが、不足点や補足が必要でしたら追記します。

よろしくお願いします。

A 回答 (2件)

大きく分けて3つやりかたがあります


(1)引数でわたしてやる
(2)cookieで渡して
(3)専用ページをつくる

それぞれ(1)(2)はJavascriptかPHP(CGI)でやります。
(3)はhtmlだけでできます。

例えば引数で渡してjavascriptでやるとすると
(手抜きですのでソースはきたないですが)
//0.htm
<a href="1.htm">2</a>
<a href="1.htm?3">3</a>

//1.htm
<html>
<head>
<script language=javascript>
function start(){
if(document.location.search=="?3"){
if0.location.href="3.htm"
}
}
</script>
</head>
<body onload="start()">
<a href="2.htm" target="if0">2</a><br>
<a href="3.htm" target="if0">3</a><br>
<hr>
<iframe SRC="2.htm" name="if0"></iframe>
</body>
</html>

という感じ。
cookieやphpでやる・・・といっても今の質問者の
レベルではわからないと推測されますので、
これは割愛します。
ホントはphpなどの方がスマートできれいなやり方
なんですけど・・・。

(3)htmlだけでやる場合は0.htmからのリンクを
1-2.htmと1-3.htmにわけて、1-2では初期2.htmを
1-3では3.htmを呼ぶようにしておけばよいです。
メンテは面倒ですが、環境に左右されにくいので
面倒なときはこれもありだと思います。
    • good
    • 0
この回答へのお礼

なるほど、頂いたソースで解決しました!

どうもありがとうございました。

お礼日時:2006/02/20 07:11

どういう場合がBでどういう場合がCですか?


今は両方他のページからAにきたときとしか書いて
いないので、場合分けができていません。

不可能ではないと思うので、もう一度冷静に
場合分けを考えてみてください。

なおやり方としてはJavascript、PHP、CGIなどが
考えられます。どれか指定した方がより適切な
回答がつきやすいと思います。

この回答への補足

BとCは位置的には同じものです。



「日本語の勉強」HPをつくるとします。
インデックスページがあって、そこから「日本語の書き方」というページに移動できるよう、リンクを張ります。

ここでは「日本語の書き方」ページが【A】にあたります。

その「日本語の書き方」ページ内にインラインフレーム"nihongo"を配置、
そして「ひらがな」と「カタカナ」というリンク<a href=ひらがな.html target="nihongo><a href=カタカナ.html target="nihongo">も同時に配置します。

「ひらがな」「かたかな」ページが上での【B】【C】です。

そして、インラインフレーム"nihongo"は<iframe src=ひらがな.html>で設定します。

そうすると、「日本語の書き方」ページでは、「ひらがな」「かたかな」のリンクボタンと、インラインフレーム枠内に「ひらがな」のページが表示されると思います。

インデックスページから「日本語の書き方」に移ってきた場合、まず「ひらがな」がフレーム内に表示されますが、
インデックスページからでも「ひらがな」と「カタカナ」を選んで「日本語の書き方」ページに行けるようにしたいのです。

逆に分かりにくくなってしまったでしょうか・・・

補足日時:2006/02/19 22:11
    • good
    • 0

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!