性格いい人が優勝

iframeを使ったページで、読み込んだページへのページ内リンクを
親ページから飛ばしたいのですが
InterExprolerでしかリンクが効きません。

もともと無理な事なのかもしれませんが、InternetExprolerならなぜか効きますし、Firefoxや他のブラウザでも対応できる方法はないでしょうか?

ページの構成上、どうしてもiframeで読み込む方法しかありません。
下記URLの用な感じの状態です、方法を御存知の方、ご教授頂けると助かります。

▼親ページ
http://ausdruck.flier.jp/test/iframe.html
▼読み込みページ
http://ausdruck.flier.jp/test/include.html

A 回答 (4件)

今の状態では、Firefoxの動きが正解で、


他がおかしいんだけれど。
iframeの高さが1800pxで
中のincludeの長さが1800pxだから、
余裕が無いので上がって来られない。
これだと、スクロールすればいいだけで
iframeにする意味が無いんじゃない。
iframeの高さを小さくするか、
includeの長さを倍位にすれば動作する。
IEでクリックすると、
1,2,3まではwindowのtopへ来るけれども、
4は途中までしか上がらないので分かるはず。
iframe等のアンカーにジャンプすると、
アンカーがiframeごとwindowのtopへ来るのは
ブラウザの仕様ということらしい。
其の位置のままでiframeのtopに
アンカーが来るようにするには、
iframe内をスクロールさせれば良い。
    • good
    • 0
この回答へのお礼

ありがとうございました、試してみたらできました。

こんな方法があったんですね!すごいです!

お礼日時:2011/08/11 07:59

>InterExprolerでしかリンクが効きません。


IE9 を使っていますが、リンクは無効です。リンクが使えたというのは古いIEのバグと思います。

がんばるな日本!さんのように、フレームに名前をつけて、リンク側はターゲット指定すればいいと思います。
    • good
    • 0

え~っと、とりあえずですね…



━ ココから ━━━━━━━━━━━━━━━━━━━━━━━━
<h1>親ページ</h1>

<ul>
<li><a href="./include.html#test1" target="main">ページ内リンク1</a></li>
<li><a href="./include.html#test2" target="main">ページ内リンク2</a></li>
<li><a href="./include.html#test3" target="main">ページ内リンク3</a></li>
<li><a href="./include.html#test4" target="main">ページ内リンク4</a></li>
</ul>

<div>
<iframe frameborder="0" src="./include.html" width="550" height="300" name="main"></iframe>
</div>
━ ココまで ━━━━━━━━━━━━━━━━━━━━━━━━

~上記の様な感じに親ページのHTMLを書き直せば、何となくそんな感じに動作するかな?

もっとより滑らかな動作を期待するんだったら、HTMLだけだとちょっと無理かも…。JavaScriptで何とかするしかないと思うけど、具体的にどんなページを作りたいのかは自分には分らないので。ここから先は自己責任というか、自力でお願いします!

この回答への補足

ご回答ありがとうございます、上記の方法で試してみたのですがやはりFirefoxでは効きませんでした。

補足日時:2011/08/07 16:40
    • good
    • 0
この回答へのお礼

ありがとうございました、こちらの方法もあわせて必要でした。
読み込みページの高さも調整すればできるようになりました。

お礼日時:2011/08/11 08:04

IEで飛ぶのはおかしい・・


あくまで、ファイル名から書かないとだめ
    • good
    • 0

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