anylinkというわりかし有名?なDHTMLのソースを使い、ページ上部でメニューを表示しています。

http://www.dynamicdrive.com/dynamicindex1/dropmenuindex.htm

きれいに表示できて気に入っているのですが、
iframeを使った場合に動きが制御できずに困っています。
事情があってこのリンクをiframe内に収めることになりました。

たぶん書いても分かりにくいので同じような構成のページを探してきました。
ここのページの上部のメニューがanylinkでドロップダウンになってるイメージです。
http://hiroba.kodate.jp/932/933/c311.html

まず問題はドロップダウンリストが上方向に延びてしまいます。
で、下方向に延びるようにはjsファイルを修正すれば下方向に延びるようになりました。
ただ表示されたドロップダウンリストがiframeの下に隠れてしまいます。
(iframeの外側に延びてきません。)
anylinkのようにdivで指定した部分をiframeの上に表示することは出来ないのでしょうか?

あまり説明がうまくいってない気がするので質問があればコメントにお願いします。
よろしくお願いします。

回答の条件
  • 1人2回まで
  • 登録:2009/07/15 17:18:36
  • 終了:2009/07/22 17:20:02

回答(1件)

id:rouge_2008 No.1

rouge_2008回答回数593ベストアンサー獲得回数3502009/07/16 08:11:00

ポイント60pt

iframe内のページに設置したanylinkのメニュー表示の解決方法ではありませんが・・・

『iframeを使った場合に動きが制御できずに困っています。』ということですが、これは「ドロップダウンリストが上方向に延びる」という事と、「表示されたドロップダウンリストがiframe内に隠れる」という事についてでしょうか?

iframeを使っている理由が分かりませんが、CSSによる擬似インラインフレームを代用することで解決しないでしょうか?

http://iswebmag.hp.infoseek.co.jp/sample182.html

※横方向のスクロールバーを表示しないようにするには、以下のどちらかを指定します。

overflow:scroll;

overflow-x: hidden;

または

overflow: auto;

※縦横両方のスクロールが不要の場合は「overflow: hidden;」


共通化されたメニュー用のページを各ページで読み込んで表示させるためにiframeを使用しているのでしたら、iframeの代わりにSSIまたはPHPを使用するのはいかがでしょうか?

javascriptは詳しくないので分かりませんが、iframe内のページのコンテンツ(javascriptで生成されたメニューなども含む)を親ページより上に表示させる事は出来ないかもしれません。

  • id:Cherenkov
    情報が少なすぎます。ブラウザはなにか。問題が再現するサンプルページをつくって見せたほうが近道だとおもいます。
  • id:rouge_2008
    質問にあるリンク先(AnyLink JS Drop Down Menu v2.2)の手順通りに、フレーム内に読み込むページにメニューを設置するとほとんどのブラウザで再現すると思います。
    私は、Firefox3、Opera9.6、Google Chromeで確認しました。

    ※私の環境だけかもしれませんが、IE8ではフレーム内に設置した場合にドロップダウンメニューが表示されない、Safariはデフォルトのサンプルでも落ちるという現象が発生しています。
  • id:rouge_2008
    Safariについてですが、ベータ版だったのが原因のようです。
    正式版にした所、落ちなくなりました。(動作についてはFirefox等と同じです。)

    ※IE8および7についてはコメントで報告した通りです。
    こちらだけで発生している現象でしょうか?
    他の方は問題ありませんか?

この質問への反応(ブックマークコメント)

「あの人に答えてほしい」「この質問はあの人が答えられそう」というときに、回答リクエストを送ってみてましょう。

これ以上回答リクエストを送信することはできません。制限について

絞り込み :
はてなココの「ともだち」を表示します。
回答リクエストを送信したユーザーはいません