インラインフレームをサイトで使用しているのですが、
インラインフレームって、更新を押すと、最初に指定したページ
<iframe src=a.html></iframe> だと a.html
に戻ってしまうじゃないですか。
それをクッキーを使用して、更新を押しても現在見ているページを表示したいのですが。(クッキーでできるのかな?)
できますでしょうか?教えてください。
また、別の方法でも、上記が可能ならば、教えてください。お願いします。
iframe名を、fffff IDを、fffffid
iframeをおくページを、index.html
iframeで最初に表示されるページを、a.html
リンクでiframe内に表示されるページを、b.html としておきます。
No.3ベストアンサー
- 回答日時:
オンロードタイミングで行ってるので、これでも状況によっては一瞬 a.htmlが表示されます。
が、一応すぐ消して空になるので、試してみてください。
<script type="text/javascript">
var cook_key = "iframesrc"; /* クッキーのキーになる適当な名前 */
window.onload = function(){
if(cook_src) document.getElementById('fffffid').src = '';
var cook_src;
var cookies = document.cookie.split(';');
for(var i=0; i<cookies.length; i++){
if(cookies[i].indexOf(cook_key) >-1){ cook_src = cookies[i].split('='); break; }
}
document.getElementById('fffffid').src = cook_src? cook_src[1] : 'a.html';
}
function setCook(arg){ document.cookie = cook_key + '=' + arg + ';'; }
</script>
他にもJavaScriptからiframeを挿入したりcreateする等もありますが、何を使うにしてもJavaScriptOFFの場合の事を考えて先にiframeを書き込んでおく事を前提にした場合はオンロードタイミングで実行になるので状況によってa.htmlやブランクが表示される可能性はあります。
『一瞬でも表示させたくない』を全てに優先させるのであれば
iframeを打ち出す部分に このスクリプトを書く
<script type="text/javascript">
var cook_key = "iframesrc"; /* クッキーのキーになる適当な名前 */
var cook_src;
var cookies = document.cookie.split(';');
for(var i=0; i<cookies.length; i++){
if(cookies[i].indexOf(cook_key) >-1){ cook_src = cookies[i].split('='); break; }
}
var file = cook_src? cook_src[1] : 'a.html';
document.write('<iframe id="fffffid" name="fffff" src="',file,'"></iframe>')
function setCook(arg){ document.cookie = cook_key + '=' + arg + ';'; }
</script>
<noscript>
<iframe id="fffffid" name="fffff" src="./a.html"></iframe>
</noscript>
No.2
- 回答日時:
とりあえずサンプルです。
iframe表示用リンクが複数あるとして。
<script type="text/javascript">
var cook_key = "iframesrc";
window.onload = function(){
var cook_src;
var cookies = document.cookie.split(';');
for(var i=0; i<cookies.length; i++){
if(cookies[i].indexOf(cook_key) >-1){ cook_src = cookies[i].split('='); break; }
}
if(cook_src){ document.getElementById('fffffid').src = cook_src[1]; }
}
function setCook(arg){ document.cookie = cook_key + '=' + arg + ';'; }
</script>
<a href="./a.html" target="fffff" onclick="setCook(this.href)">test</a>
<a href="./b.html" target="fffff" onclick="setCook(this.href)">test</a>
<iframe id="fffffid" name="fffff" src="./a.html"></iframe>
次回訪問の時の事は書いてないのでクッキーの有効期限を付けていません。
ブラウザを終了させたら期限切れです。
この回答への補足
回答ありがとうございます!
サンプルどおりに設定すると、ちゃんとクッキー出来ました。
しかし、「iframeで最初に表示されるページa.html」が一度表示されてから、
「リンクでiframe内に表示されるページb.html」が表示されるようになります。
a.htmlを表示させずに、b.thmlをすぐに表示するにはどうすればよいでしょうか。
教えてください。
No.1
- 回答日時:
自ドメイン内でのiframeコンテンツとして、
fffffidのcontentWindow.location 属性をリンク命令を押すたびに、書き込み(onClickなどでいいかと思います。)、ページロードの際クッキーを読み出せばできると思います。
簡単にテストしてみましたがヤハリできてました。
この回答への補足
回答ありがとうございます。
javascript超初心者なもので、サンプルなど記載してもらわなければ、
全然わかりません。申し訳ないです。
よろしければ、サンプル等、記載よろしくおねがいします。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- SEO WP内の検索で403エラーが出される問題について 1 2022/11/26 08:46
- JavaScript Javascript初心者|jQueryの.val()で値を取得し複数の要素を連結させる方法知りたい 2 2022/06/02 12:06
- HTML・CSS (Javascript)印刷するファイルに応じて印刷プレビュー画面で用紙を自動的に切り替えたい!! 2 2022/04/11 12:04
- HTML・CSS 自身のHPにYouTube動画を貼り付けるのが出来なくなり困ってます 1 2022/11/11 10:44
- アプリ Edgeを操作するアプリについて 4 2023/05/11 22:48
- PHP PHP MySql ページング 2 2022/09/20 06:38
- HTML・CSS HTMLを正しく表示させるには 2 2023/06/18 09:12
- HTML・CSS ホームページをちょっと加工する程度の無料または古くて安く購入できる作成ソフトを教えてください 5 2022/12/16 12:17
- ノートパソコン ページ番号の入れ方について 3 2023/02/16 17:11
- HTML・CSS 別サイトのHTML内にある情報を自動取得して、自分のサイトに組込む方法を教えてください。 例えば、Y 1 2023/06/15 08:09
このQ&Aを見た人はこんなQ&Aも見ています
関連するカテゴリからQ&Aを探す
おすすめ情報
このQ&Aを見た人がよく見るQ&A
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
複数の画像の中から複数の画像...
-
imgのsrcに値を設定するには
-
window.openで値の渡し方を教え...
-
JAVAで画像をボタンで切り替え...
-
MAX関数を使ってからLEFT JOIN...
-
CSS のみのタブ切り替えについて
-
jQueryで同じクラス名のものを...
-
createElementで作成した要素を...
-
jQueryでのドラッグアンドドロ...
-
[急ぎ] videoタグで埋め込んだm...
-
jqueryで要素の中身を要素の外...
-
スクロール可能なチェックボックス
-
jspでcssが読み込めない
-
eclipseでcssを使うためには?
-
htmlの記述で link rel=styles...
-
アコーディオン自動開閉メニュ...
-
SimplyScrollについて
-
JQuery UIで、表示したタブの中...
-
divのheight指定で画面一杯に表...
-
【初心者】UWSCでjavascriptで...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
window.openで値の渡し方を教え...
-
jQueryでサーバー上のファイル...
-
【jQuery】複数の画像の読み込...
-
複数のバナーをリロードする度...
-
jQueryで画像を重ねる
-
一定時間ごとにgif画像の切...
-
画像をクリックすると別ウイン...
-
JavaScriptで画面サイズによっ...
-
HTMLページ内のタグに対しての...
-
HPに複数の画像をクリックで切...
-
【javascript】ロールオーバー...
-
画像の入れ替え
-
javascriptによるランダム画像...
-
画像と文字を同時に切り替えたい
-
JavaScriptで画像置換えてクリ...
-
連続したURLへのwindow.openの...
-
リンク切の場合リンクしない
-
戻り読みの代わりとなる正規表...
-
複数のボールの落下、バウンド...
-
<img>タグの alt= の値をキャプ...
おすすめ情報