3

私は検索と検索を行ってきましたが、これには絶対に困惑しています。100%の幅と高さのiframeが互いに積み重ねられたindex.htmlページがあります。インデックスには、フレーム全体のz-indexによる固定ナビゲーションがあります。私のインデックスは基本的にjavascriptでスクロールが無効になっています。

そのため、ナビゲーション(インデックスページにあります)をiframeの1つ内の特定のアンカーにリンクさせようとしています。これは、そのiframeに読み込まれます。私は明らかにこれを集めましたが、これは言うのが簡単です。なぜ<a href="iframe-src.html#anchor" target="iframe">うまくいかないのか私にはわかりませんが、どうやらうまくいきません。

これの回避策は何ですか?基本的にインデックスの設定方法は次のとおりです。

    <html>
    <head>

    ** some CSS and Javascript here that I know's irrelevant. **

    <script type="text/javascript">
        document.documentElement.style.overflow = 'hidden';  // firefox, chrome
        document.body.scroll = "no";    // ie only
        document.documentElement.style.overflowX = 'hidden';     // horizontal scrollbar will be hidden
        document.documentElement.style.overflowY = 'hidden';     // vertical scrollbar will be hidden
    </script>
</head>
<body>
<iframe src="landing.html" name="landing" style="position: relative; width: 100%; height: 100%; border: 0;"></iframe>   
<iframe src="work1.html" name="work-iframe" style="position: relative; width: 100%; height: 100%; z-index: 1;"></iframe>
<iframe src="info.html" name="info" style="position: relative; width: 100%; height: 100%; z-index: 4;"></iframe>

<nav>   
    <a href="work.html#parker" target="work-iframe">PARKER BROTHERS CLASSICS</a>

    <a href="work.html#bohs" target="work-iframe">BOHS & HONS</a>

    <a href="work.html#companion" target="work-iframe">THE COMPANION SERIES</a>

    <a href="work.html#balmer" target="work-iframe">BALMER</a>

    <a href="work.html#hoeweler" target="work-iframe">MICHAEL HOEWELER</a>

    <a href="work.html#ampugreen" target="work-iframe">AMPUGREEN</a>

    <a href="work.html#occasional" target="work-iframe">OCCASIONAL SYMPHONY</a>

    <a href="work.html#type" target="work-iframe">TYPE & LOGOS</a>

    <a href="work.html#nextwave" target="work-iframe">NEXT WAVE FESTIVAL</a>

    <a href="work.html#illustration" target="work-iframe">ILLUSTRATIONS</a>

    <a href="work.html#stationnorth" target="work-iframe">STATION NORTH</a>
</nav>

考え?

4

1 に答える 1

0

純粋な JavaScript を使用し、ライブラリーを使用していないため、コードを使用する代わりに、JavaScript を使用する方法を説明します (これは多くの解決策の 1 つにすぎないため)。

サイト訪問者が常に JavaScript を使用することが予想される場合を除き、JS を window.load 関数に移動することをお勧めします。

1つを除くすべてのiframeを非表示にします(最初のiframeは、デフォルトのiframeとして選択したものです)。

いくつかのことを行うために、ナビゲーション ハイパーリンクにイベント ハンドラー (おそらく onclick) を追加します。使用するために (疑似コード) iframe.ELEMENT.offsetTop を使用して、iframe の特定のアンカーから iframe のページの上部までのオフセット... 3. ... iframe.ELEMENT.scrollTo(value_determined_in_step_2)

説明したように、これは特定のユースケースで機能すると思います。

于 2013-06-16T02:44:57.213 に答える