インラインフレームをサイトで使用しているのですが、
インラインフレームって、更新を押すと、最初に指定したページ
<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ランキング
-
window.openで値の渡し方を教え...
-
画像の下に説明文をつけて切り...
-
これはどんなJavaScriptなので...
-
画像アップロードしたい
-
jQueryでサーバー上のファイル...
-
<img>タグを<span>でくくりたい
-
MAX関数を使ってからLEFT JOIN...
-
JSPでの画像ファイル表示
-
textareaで入力した文字を改行...
-
iframe内のリンクが飛ばないの...
-
jspでcssが読み込めない
-
jQueryスライドショー画像への...
-
どの<li><a> が押されたか判別...
-
読み込んだQRコードをフォーム...
-
Ctrl+F(検索)の窓を出したいの...
-
javascriptテキストBOX色を元に...
-
1枚の画像をクリックすると複数...
-
jQueryで特定のURLの時のみ表示
-
「jQuery」アコーディオンメニ...
-
神経衰弱 順番に裏返し
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
window.openで値の渡し方を教え...
-
jQueryでサーバー上のファイル...
-
【jQuery】複数の画像の読み込...
-
複数のバナーをリロードする度...
-
jQueryで画像を重ねる
-
一定時間ごとにgif画像の切...
-
画像をクリックすると別ウイン...
-
JavaScriptで画面サイズによっ...
-
HTMLページ内のタグに対しての...
-
【javascript】ロールオーバー...
-
HPに複数の画像をクリックで切...
-
連続したURLへのwindow.openの...
-
リンク切の場合リンクしない
-
画像と文字を同時に切り替えたい
-
JavaScriptで画像置換えてクリ...
-
画像の入れ替え
-
javascriptによるランダム画像...
-
<img>タグの alt= の値をキャプ...
-
outlook2010の不具合で困ってい...
-
複数のボールの落下、バウンド...
おすすめ情報