1

疑似視差サイトを作ろうとしています。Scrollmagic jquery プラグインを使用しています。バックグラウンド アニメーションは正常に動作していますが、最初のテキスト ボックス (灰色のバーにある) に問題があります。opacity:1 から開始し、tween を opacity:0 に設定しました。ページを読み込むと、div コンテナーの不透明度が既に .5 に設定されているようです。私は何を間違っていますか?TweenMax.to のデュレーションを .5 に調整してみましたが、.text-background のトゥイーンに違いは見られませんでした。

codepen はこちらから入手できます: http://codepen.io/anon/pen/vExZPR

ありがとうございました。

    <body>
        <div id="container">
            <div id="parallax1">
                <div style="background-image: url('img/evcbg1.jpg');">
                    <div id="parallax1_content">
                        <div class="text-background"><h1>We offer a full line of EPA approved enclosed combustors that meet the ever-changing<br>requirements of today’s regulation-filled oil and gas industry.</h1></div>
                    </div>
                </div>
            </div>
            <div class="content_box">
                <h2>Are you in compliance with the latest EPA tank emission regulations?</h2>
                <p>...</p>
            </div>
            <div id="parallax2">
                <div style="background-image: url('img/clouds.jpg')"></div>
            </div>
            <div class="content_box">
                <h2>Are you in compliance with the latest EPA tank emission regulations?</h2>
                <p>...</p>
            </div>
            <div id="parallax3">
                <div style="background-image: url('img/clouds.jpg')"></div>
            </div>
            <div class="content_box">
                <h2>Are you in compliance with the latest EPA tank emission regulations?</h2>
                <p>...</p>
            </div>
            <div class="content_box">
                <h2>Are you in compliance with the latest EPA tank emission regulations?</h2>
                <p>...</p>
            </div>
            <div class="content_box">
                <h2>Are you in compliance with the latest EPA tank emission regulations?</h2>
                <p>...</p>
            </div>
        </div>

         <script>
            $(document).ready(function(){
                //initialize the controller
                var controller = new ScrollMagic({globalSceneOptions: {triggerHook: "onEnter", duration: $(window).height()*2}});

                //build scenes
                new ScrollScene({triggerElement: "#parallax1"})
                    .setTween(TweenMax.to(".text-background", .1, {opacity: "0", ease: Linear.easeNone}))
                    .addTo(controller)
                    .addIndicators({zindex: 1, suffix: "1"});

                new ScrollScene({triggerElement: "#parallax1"})
                    .setTween(TweenMax.from("#parallax1 > div", 1, {top: "-80%", ease: Linear.easeNone}))
                    .addTo(controller)
                    .addIndicators({zindex: 1, suffix: "1.BG"});

                new ScrollScene({triggerElement: "#parallax2"})
                    .setTween(TweenMax.from("#parallax2 > div", 1, {top: "-80%", ease: Linear.easeNone}))
                    .addTo(controller)
                    .addIndicators({zindex: 999, suffix: "2"});

                new ScrollScene({triggerElement: "#parallax3"})
                    .setTween(TweenMax.from("#parallax3 > div", 1, {top: "-80%", ease: Linear.easeNone}))
                    .addTo(controller)
                    .addIndicators({zindex: 999, suffix: "3"});

                // show indicators (requires debug extension)
                    scene.addIndicators();
            });


         </script>

    </body>
4

1 に答える 1

1

いくつかの注意事項:
コンソールがきれいであることを常に確認してください。そこに何かがある場合は、おそらく何か間違ったことをしたことを意味します。しかし、心配する必要はありません。問題を解決する方法についての優れた指針も提供します。

ペンでコンソールを見ると、「setIndicators」を呼び出す 9 行目に問題があることがすぐにわかります。これは、ScrollMagic デバッグ拡張機能を含めるのを忘れたことが原因です。

次に、27行目に別の問題があり、scene未定義であると記載されています。変数が設定されておらず、ScrollMagic の例の 1 つからコピーするときに C&P エラーであると想定しています。

これら 2 つの問題を解決した後、緑の上に緑になっているため、最初のものを除いて、実際にインジケーターを見ることができます。
幸いなことに、色を変更できます。

これらの問題が解決したら、実際の問題に取り組み始めます。

シーン インジケーターが表示されたので、何が起こっているのかがかなり明確になるはずです。
シーンはwithにtriggerHook設定され、それに応じてビューポートの下部に配置されます。シーンの はメイン セクションである に設定され 、その位置がページの上部になります。 そのため、トリガーは最初からすでにシーンの開始位置を過ぎています。 また、シーンの長さはウィンドウの高さの 2 倍であるため、この状況 (下部でトリガー、上部から開始) では、ロード時に正確に 50% でシーンが再生されます。"onEnter"globalSceneOptions
triggerElement"#parallax1"

これを解決するのは、問題のシーンの triggerHook を変更するのと同じくらい簡単です。(または)
に設定すると、シーンの triggerHook が上部に移動します。 ドキュメントに記載されているように、そうしないと上書きされるため、これはコントローラーにシーンを追加した後に行う必要があることに注意してください。"onLeave"0

これにより、この解決済みバージョンが残ります: http://codepen.io/janpaepke/pen/WbpMOO

ScrollMagic シーン操作の例を見て、どのシーン パラメータがどの結果をもたらすかをよりよく理解することをお勧めします。

今後の問題については、次のガイドに従うことを強くお勧めします: https://github.com/janpaepke/ScrollMagic/blob/master/CONTRIBUTING.md

これが役に立てば幸いです、
J

于 2015-01-15T09:54:20.467 に答える