インラインフレーム内に別ページを表示させるリンク方法

[新着] Webテンプレートを仮オープンしました



0   名前: kota : 2005/05/27 03:04
はじめまして。

HPを作成途中なのですが、解決しない問題があったので質問させていただきます。

僕のページは、トップページ(index.html)内に、インラインフレームがあり、各メニューをクリックすることでそのインラインフレーム(name="iframe")内にそれぞれのページが表示される構造になっています。

で、通常はindex.htmlにリンクをすると

<iframe name="iframe" src="home.html"〜〜>〜〜〜</iframe>

という記述により、「home.html」がそのインラインフレーム内に表示された状態でリンクされるのですが、これを別ページを表示させつつリンクさせることは可能でしょうか?

つまり、「home.html」の代わりにたとえば「link.html」などの別ページを、リンクした瞬間に表示させておきたいのです。

<a href="http://〜〜〜/index.html">というタグを、
<a href="http://〜〜〜/index.html●●●●">のように後ろに何かをつけることで、解決できたりするのであれば、教えていただきたいのです。


もしそのような裏技(?!)がなければ、普通にもう一つのトップページを作って、そっちには

<iframe name="iframe" src="link.html"〜〜>〜〜〜</iframe>

と書いておいて・・・みたいな操作をしようと思っているのですが。。。それは更新が面倒になりそうなので。


うまく説明できてなくてわかりづらい点ありましたら、補足しますので、よろしくお願いします。

1   名前: 元帥 : 2005/05/27 03:04  [URL
適当に改造して下さい。
<a href="〜略〜/index.html?iframe=link.html">
のように使います。

/*JavaScript*/
function out_iframe(URL){
var query = URL.split("?");
var hash = query[1].split("&");
for(var i=0;i<hash.length;i++){
var data=hash[i].split("=");
if(data[0]=="iframe"){
document.write("<iframe src=\"",data[1],"\"></iframe>");
break;
}
}
}

/*HTML*/
<script language="JavaScript" type="text/javascript">
<!--
out_iframe(location.href);
-->
</script>

#所詮環境依存なので、CGIを使う方が無難です。

2   名前: 元帥 : 2005/05/27 03:04  [URL
自己レスです。え〜と上記だと指定がない時、エラーになるようなので(汗

function out_iframe(URL){
if((URL.lastIndexOf("?")!=-1)&&(URL.length > URL.lastIndexOf("?")+1)){
var query = URL.split("?");
var hash = query[1].split("&");
for(var i=0;i<hash.length;i++){
var data=hash[i].split("=");
if(data[0]=="iframe"){
document.write("<iframe src=\"",data[1],"\"></iframe>");
break;
}
}
}
}

3   名前: kota : 2005/05/27 03:04
すばやい回答ありがとうございます。

JavaScriptを使うんですね・・・しかし僕にはJavaの知識はあまりなくて、今作っているHPにもJavaはほとんど使ってないんですね。
CGIを使ってできるのであれば、それを探してみようと思います。

とにかく、回答ありがとうございました!

一覧へ戻る