ムーブメントの作成は、視聴者に興味深いインタラクティブな体験を提供する素晴らしい方法です。近代的なサイトがより多くの対話性を提供しているため、シンプルなWebサイトでさえ、訪問者を引き付けるためにある程度のアニメーション /動きを提供することがますます期待されています。
今日、私はあなたがあなたのウェブプロジェクトに適応できるテクニックを概説します - 事前に定義された地域にスクロールするときにアニメーションをトリガーします。これらのアニメーションは、CSS変換とCSS遷移を使用して作成されます。また、jQueryを使用して、要素が表示されているときに検出し、適切なクラスを追加/削除します。
このようになっている例を見たい人のために、あなたはデモにまっすぐジャンプできます。キーテイクアウト
- スクロールベースのアニメーションは、jQueryとCSS3を使用して作成でき、視聴者にインタラクティブなエクスペリエンスを提供します。これらのアニメーションは、ユーザーが事前に定義された地域にスクロールするとトリガーされ、より魅力的で視覚的に魅力的です。
- この手法には、CSS変換とCSS遷移の使用が含まれ、jQueryは要素が表示されている時期を検出し、適切なクラスを追加/削除するために使用されます。このアプローチの考慮事項には、ブラウザの互換性と速度が含まれます。最新のブラウザは、スムーズなアニメーション用の2Dおよび3D変換をサポートしています。 プロセスには、視界のアニメーション要素を検出し、スクロールイベントに接続し、サイズ変更の処理、要素の高さと幅の計算が含まれます。アニメーションは、要素がビューポート内にあるときにトリガーでき、インタラクティブなインターフェイスのために追加の変換または効果を連鎖させることができます。
- スクロールアニメーションの例には、左からの要素のスライド、下から下からのフェード要素、およびマルチステップバウンスアニメーションが含まれます。これらの手法は、スタッフプロファイルやコース情報の表示など、さまざまなWebプロジェクトに適合させることができます。
- なぜスクロールでアニメーションをトリガーするのですか?
- スクロールでアニメーションをトリガーしたい主な理由は、ユーザーが要素を視界にスクロールするときと同じようにアクティブ化することです。
cssまたはjqueryでアニメーション化しますか?
各アプローチには長所と短所があります。 jQuery(読み取りJavaScript)を使用すると、CSSがそうでないこと(スクロール位置や要素の属性など)をアニメーション化できます。層。
CSSを介して変換を使用しますが、状況に応じて考慮すべき変数が常にあります。次の要因を考慮に入れます:
ブラウザの互換性
ソリューションは変換に基づいているため、ブラウザの互換性は2D変換または3D変換のいずれかをサポートするものに制限されます。
すべての最新のブラウザは3D変換をサポートし、Internet Explorer 9やOpera 11.5などの古いレガシーブラウザのいくつかは2D変換をサポートします。デスクトップブラウザとモバイルブラウザの両方の全体的なサポートは包括的です。
jQueryのアニメーションメソッドは、ライブラリの1.xバージョンを使用している場合、任意の(SANE)ブラウザーで機能します。 jQuery 2.xはIE8以下のサポートを削除したため、レガシーブラウザをサポートする必要がない場合にのみ使用します(幸運!)
速度
特にモバイルデバイスに関しては、高速でスムーズなアニメーションが必要です。そのため、可能な場合は移行と変換を使用するのが常に最善です。
この例では、古いブラウザーに2Dフォールバックを備えた3D変換を使用します。ハードウェアアクセラレーションに速度を強制したいので、3D変換は必須です(GPU加速レンダリングを引き起こす他の機能とともにTranslate3Dを使用します)。
jQueryのアニメートメソッドはGPU支援変換よりもかなり遅いため、アニメーション自体ではなく、イベント処理 /計算にJQueryを使用するだけです(可能な限りスムーズにしたいからです)。サイドノート
私たちは皆、jquery!== javascriptを知っていますよね?まあ、アニメーションにバニラJSを使用することは、結局のところそれほど悪い考えではないかもしれません。それはこのチュートリアルの範囲を超えていますが、もっと知りたい人のための主題に関する2つの優れた記事を次に示します。
css vs. jsアニメーション:どちらがより速いですか?
- 神話のバスト:CSSアニメーションvs. javascript
- ショーに戻って…
この手法の全体的なポイントは、アニメーションとしてマークされたすべての要素を調べ、現在ビューポート内にいるかどうかを判断することです。これをどのように達成するかを踏んでみましょう:
セレクターキャッシュ
スクロールは高価なビジネスです。イベントリスナーをスクロールイベントに添付すると、ユーザーがページをスクロールするたびに何度も発射されます。ユーザーがスクロールするたびに、ディメンション /計算関数を呼び出すため、セレクターによって返される要素を変数に保存することをお勧めします。これはセレクターキャッシングとして知られており、DOMを何度も依頼することを避けます。
スクリプトでは、ウィンドウオブジェクトとアニメーション化する要素のコレクションの両方を参照します。
変数の前のドルのサインに注意してください。これは、彼らがjQueryオブジェクト、またはオブジェクトのコレクションを保持していることを示すための慣習です。
スクロールイベントにフック
次に、スクロールイベントに対応するイベントハンドラーを作成します。これは、ページをスクロールするときに発射されます。 CHECK_IF_IN_VIEW関数(すぐに到達します)への参照を渡します。スクロールイベントが起動するたびに、この機能が実行されます。
<span>//Cache reference to window and animation items </span><span>var $animation_elements = $('.animation-element'); </span><span>var $window = $(window);</span>サイズ変更の処理
高さと幅を計算しているため、一般的なサイズ変更とともに方向の変更を考慮する必要があります。
イベントハンドラーを更新して、巻物とサイズの両方のイベントを聞くことができます。これにより、オリエンテーションを変更または変更するときに検出機能が機能するようになります。
さらに、jqueryトリガーメソッドを使用して、DOMの準備ができたらすぐにスクロールイベントをトリガーします。これを行い、アニメーション化される必要のある要素のいずれかがビューポート内にある場合、ビューのように検出され、アニメーションがスクロールしているかのように適用されます。
$<span>window.on('scroll', check_if_in_view);</span>
scroll位置検出
$<span>window.on('scroll resize', check_if_in_view);</span>
この例の実際の検出部分は、次のスクリプトに由来しています。
ここで何が起こっているのかを分解します。
$<span>window.trigger('scroll');</span>
私たちは、アニメーション化するすべてのアイテム($ animation_elements変数に保存)を調べます。これらの要素それぞれについて、その高さと下部の位置とともに高さを収集します(したがって、ページのどこに住んでいるかがわかります)。
各アイテムを比較して、その下位置がウィンドウの上位の位置よりも大きいかどうかを確認しますが、アイテムの上位の位置はウィンドウの下位置よりも小さいことを確認します。視覚的な例
高さと幅の計算
検出機能では、物事を正しく計算するためにさまざまな要素の高さと位置を取得する必要があります。これは、jQueryの高さ関数を使用した場所です。 これらの高さ機能がどのように機能するかについての内訳を持つことが重要です

高さ()とwidth()関数は、要素の高さまたは幅を返します。彼らはすべてのパディング、境界、マージンを除外します
完全な内訳については、高さまたは幅のドキュメントにアクセスしてください。
innerheight()およびinnerwidth()
innerheight()およびinnerwidth()関数は、追加のパディングを含む要素の高さまたは幅を返します(ただし、境界とマージンの両方を除外します)

完全な内訳については、内側または内幅のドキュメントをご覧ください。
outerheight()およびouterwidth()
outerheight()およびouterwidth()関数は、要素の高さまたは幅を返し、そのパディングと境界線を含みます。 さらに、関数にtrueの値を渡すことにより、マージンを含めるように指定することもできます。
完全な内訳については、外側の文書または外側のドキュメントをご覧ください

以下にリストされているのは、議論したことの基本を使用する一連のアニメーションです。これらの例では、アニメーション要素を探し、ビューポート内にあるときにアクティブなビュークラスを適用します。 移動したい要素はすべて、その位置を相対的または絶対に設定するアニメーション要素などの標準クラスをすべて備えている必要があります。さらに、複数のエフェクトを作成する場合は、視聴クラスと組み合わせることができるスライド左などの対応するクラスを作成できます。次に、Animation-Element.Slide-Left.Inviewなどのクラスに変換を適用する必要があります。
左からスライドします最初の例では、ビューポートに入ると、左から要素をスライドさせます。 これを実現し、Elements x軸でtranslate3dを使用します。
スクロールでペンCSSアニメーションを参照してください - 左からSitePoint(@SitePoint)Codepenのスライド。 この例では、スタッフプロファイルを表示するために使用しましたが、同じ機能を再評価して、必要な要素をスライドさせることができます。
底からフェードイン
今回は、ユーザーがスクロールするときに、下から上から要素を衰退させます。これは、要素のy軸上のtranslate3dを介して達成します。
この例では、グリッド構造のトピックに関するコース情報をリストしました。ユーザーが下にスクロールすると、ビューの各カードがフェードインして上に移動し、コースに関する情報が表示されます。
スクロールでペンCSSアニメーションを参照してください - CodepenのSitePoint(@SitePoint)でボトムアップからフェードアップします。
マルチステップバウンスアニメーション最後の例では、多段階のアニメーションを使用します。これを行うには、回転と翻訳を組み合わせたカスタムキーフレームアニメーションを定義します。このタイプのアニメーションは、Webサイトの領域を紹介するのに役立ちます(この例では、スタッフのプロファイルを紹介しています)。
ここからどこへ?
ここから、学んだ概念を取り入れて、プロジェクトに適用できます。
要素が見られるときに検出できるようになったので、追加の変換または効果をチェーンしてインタラクティブなインターフェイスを作成できます。たとえば、要素がビューポートに入るとき(およびその変換後)、タイトルでフェードする、画像のスケーリングなどの追加要素を変換できます。
あなたはすでにあなたのプロジェクトでこれらの効果を使用していますか?それとも、アニメーションは使いすぎてユーザーエクスペリエンスを損なうと思いますか?いずれにせよ、私はあなたからコメントで聞いてみたいです。
ティファニーB.ブラウンによる本CSSマスター、第2版でCSSスキルを次のレベルに引き上げます - CSSアニメーション、トランジション、変換などをカバーします。
jqueryとcss3を使用したスクロールベースのアニメーションに関するよくある質問(FAQ)
jQueryとCSS3を使用してスクロールベースのアニメーションを作成するための基本的な要件は何ですか?JQueryとCSS3を使用してスクロールベースのアニメーションを作成するには、HTML、CSS、およびJavaScriptの基本的な理解が必要です。また、プロジェクトにjqueryライブラリを含める必要があります。 jQueryは、HTMLドキュメントの移動、イベントの処理、アニメーションを簡素化する高速で小さく、機能が豊富なJavaScriptライブラリです。一方、CSS3は、カスケードスタイルシートの言語の最新の進化であり、CSS2.1の拡張を目指しています。丸い角、影、勾配、遷移、アニメーションなど、待望のノベルティがたくさんあります。スクロールベースのアニメーションを作成するには、最初にJQueryライブラリをHTMLファイルに含める必要があります。 jQuery Webサイトからダウンロードするか、コンテンツ配信ネットワーク(CDN)から直接含めることができます。 jQueryを含めたら、JavaScriptコードを別の.JSファイルまたはHTMLファイルにスクリプトタグ内で書き始めることができます。その後、jQueryの.animate()メソッドを使用してアニメーションを作成できます。 CSS3アニメーションの場合、キーフレームとアニメーションプロパティを使用できます。jQueryのスクロールベースのアニメーションの速度を制御できますか? jqueryで。 .Animate()メソッドは、アニメーションが実行される期間を決定する期間パラメーターを受け入れます。期間はミリ秒単位で指定されています。より高い値は、より速いアニメーションではなく、より速いアニメーションを示します。スクロールベースのアニメーションをよりスムーズにするにはどうすればよいですか?スクロールベースのアニメーションをよりスムーズにするには、 'ease-inを使用できます-out 'CSS3遷移 - 整理機能プロパティの値。この値は、アニメーションがゆっくりと起動し、中央で加速し、最後に遅くなることを指定します。これは、あなたのアニメーションにもっと自然で滑らかな感触を与えることができます。
ユーザーがページ上の特定のポイントにスクロールしたときにアニメーションをトリガーするにはどうすればよいですか?
jqueryの.scroll()メソッドを使用して、ユーザーがスクロールしたときにイベントをトリガーすることができます。ページ。 .scroll()メソッド内で、.scrolltop()メソッドを使用して、スクロールバーの現在の垂直位置を取得できます。次に、IFステートメントを使用して、スクロール位置が特定のポイントを超えているかどうかを確認できます。もしそうなら、アニメーションをトリガーします。 jQueryなしでCSS3アニメーションを使用できます。 CSS3は、@KeyFramesルールとアニメーションプロパティを導入します。これにより、CSSのみを使用してアニメーションを作成できます。ただし、jQueryは、ユーザーのインタラクションに基づいて動的に変更されたアニメーションプロパティなど、アニメーションに対してより多くの制御と柔軟性を提供できます。 .Stop()メソッドを使用して、jQueryのスクロールベースのアニメーションを停止できます。このメソッドは、選択した要素で現在実行されているアニメーションを停止します。アニメーションを一時停止するためには、JQueryがアニメーションの一時停止をネイティブにサポートしていないため、もう少し複雑です。ただし、プラグインを使用するか、アニメーションの状態と進行状況を手動で追跡することでこれを達成できます。背景画像が前景画像よりも遅くなるテクニック、深さの幻想を生み出します。ページスクロールの速度に関連して背景画像の動きの速度を変更することにより、jQueryとCSS3を使用してこの効果を達成できます。 >はい、jQueryの.animate()メソッドを使用して、複数のCSSプロパティを一度にアニメーション化できます。 .animate()メソッドのプロパティオブジェクトパラメーターにキー値のペアとしてアニメーション化するプロパティを含める必要があります。 🎜>
さまざまなブラウザーでスクロールベースのアニメーションが機能するようにするには、常にCSS3プロパティにベンダープレフィックスを使用する必要があります。これらの接頭辞は、たとえ実験的であっても、プロパティがすべてのブラウザで認識されることを保証します。 jQueryアニメーションの場合、jqueryがこれを処理しているため、ブラウザの互換性を心配する必要はありません。
ここから、学んだ概念を取り入れて、プロジェクトに適用できます。
要素が見られるときに検出できるようになったので、追加の変換または効果をチェーンしてインタラクティブなインターフェイスを作成できます。たとえば、要素がビューポートに入るとき(およびその変換後)、タイトルでフェードする、画像のスケーリングなどの追加要素を変換できます。
あなたはすでにあなたのプロジェクトでこれらの効果を使用していますか?それとも、アニメーションは使いすぎてユーザーエクスペリエンスを損なうと思いますか?いずれにせよ、私はあなたからコメントで聞いてみたいです。
ティファニーB.ブラウンによる本CSSマスター、第2版でCSSスキルを次のレベルに引き上げます - CSSアニメーション、トランジション、変換などをカバーします。 jqueryとcss3を使用したスクロールベースのアニメーションに関するよくある質問(FAQ)
jQueryとCSS3を使用してスクロールベースのアニメーションを作成するための基本的な要件は何ですか?JQueryとCSS3を使用してスクロールベースのアニメーションを作成するには、HTML、CSS、およびJavaScriptの基本的な理解が必要です。また、プロジェクトにjqueryライブラリを含める必要があります。 jQueryは、HTMLドキュメントの移動、イベントの処理、アニメーションを簡素化する高速で小さく、機能が豊富なJavaScriptライブラリです。一方、CSS3は、カスケードスタイルシートの言語の最新の進化であり、CSS2.1の拡張を目指しています。丸い角、影、勾配、遷移、アニメーションなど、待望のノベルティがたくさんあります。スクロールベースのアニメーションを作成するには、最初にJQueryライブラリをHTMLファイルに含める必要があります。 jQuery Webサイトからダウンロードするか、コンテンツ配信ネットワーク(CDN)から直接含めることができます。 jQueryを含めたら、JavaScriptコードを別の.JSファイルまたはHTMLファイルにスクリプトタグ内で書き始めることができます。その後、jQueryの.animate()メソッドを使用してアニメーションを作成できます。 CSS3アニメーションの場合、キーフレームとアニメーションプロパティを使用できます。jQueryのスクロールベースのアニメーションの速度を制御できますか? jqueryで。 .Animate()メソッドは、アニメーションが実行される期間を決定する期間パラメーターを受け入れます。期間はミリ秒単位で指定されています。より高い値は、より速いアニメーションではなく、より速いアニメーションを示します。スクロールベースのアニメーションをよりスムーズにするにはどうすればよいですか?スクロールベースのアニメーションをよりスムーズにするには、 'ease-inを使用できます-out 'CSS3遷移 - 整理機能プロパティの値。この値は、アニメーションがゆっくりと起動し、中央で加速し、最後に遅くなることを指定します。これは、あなたのアニメーションにもっと自然で滑らかな感触を与えることができます。ユーザーがページ上の特定のポイントにスクロールしたときにアニメーションをトリガーするにはどうすればよいですか?
jqueryの.scroll()メソッドを使用して、ユーザーがスクロールしたときにイベントをトリガーすることができます。ページ。 .scroll()メソッド内で、.scrolltop()メソッドを使用して、スクロールバーの現在の垂直位置を取得できます。次に、IFステートメントを使用して、スクロール位置が特定のポイントを超えているかどうかを確認できます。もしそうなら、アニメーションをトリガーします。 jQueryなしでCSS3アニメーションを使用できます。 CSS3は、@KeyFramesルールとアニメーションプロパティを導入します。これにより、CSSのみを使用してアニメーションを作成できます。ただし、jQueryは、ユーザーのインタラクションに基づいて動的に変更されたアニメーションプロパティなど、アニメーションに対してより多くの制御と柔軟性を提供できます。 .Stop()メソッドを使用して、jQueryのスクロールベースのアニメーションを停止できます。このメソッドは、選択した要素で現在実行されているアニメーションを停止します。アニメーションを一時停止するためには、JQueryがアニメーションの一時停止をネイティブにサポートしていないため、もう少し複雑です。ただし、プラグインを使用するか、アニメーションの状態と進行状況を手動で追跡することでこれを達成できます。背景画像が前景画像よりも遅くなるテクニック、深さの幻想を生み出します。ページスクロールの速度に関連して背景画像の動きの速度を変更することにより、jQueryとCSS3を使用してこの効果を達成できます。 >はい、jQueryの.animate()メソッドを使用して、複数のCSSプロパティを一度にアニメーション化できます。 .animate()メソッドのプロパティオブジェクトパラメーターにキー値のペアとしてアニメーション化するプロパティを含める必要があります。 🎜>
さまざまなブラウザーでスクロールベースのアニメーションが機能するようにするには、常にCSS3プロパティにベンダープレフィックスを使用する必要があります。これらの接頭辞は、たとえ実験的であっても、プロパティがすべてのブラウザで認識されることを保証します。 jQueryアニメーションの場合、jqueryがこれを処理しているため、ブラウザの互換性を心配する必要はありません。以上がjQueryとCSS3を使用したスクロールベースのアニメーションの作成の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

JavaScript文字列置換法とFAQの詳細な説明 この記事では、javaScriptの文字列文字を置き換える2つの方法について説明します:内部JavaScriptコードとWebページの内部HTML。 JavaScriptコード内の文字列を交換します 最も直接的な方法は、置換()メソッドを使用することです。 str = str.replace( "find"、 "置換"); この方法は、最初の一致のみを置き換えます。すべての一致を置き換えるには、正規表現を使用して、グローバルフラグGを追加します。 str = str.replace(/fi

それで、あなたはここで、Ajaxと呼ばれるこのことについてすべてを学ぶ準備ができています。しかし、それは正確には何ですか? Ajaxという用語は、動的でインタラクティブなWebコンテンツを作成するために使用されるテクノロジーのゆるいグループ化を指します。 Ajaxという用語は、もともとJesse Jによって造られました

10の楽しいjQueryゲームプラグインして、あなたのウェブサイトをより魅力的にし、ユーザーの粘着性を高めます! Flashは依然としてカジュアルなWebゲームを開発するのに最適なソフトウェアですが、jQueryは驚くべき効果を生み出すこともできます。また、純粋なアクションフラッシュゲームに匹敵するものではありませんが、場合によってはブラウザで予期せぬ楽しみもできます。 jquery tic toeゲーム ゲームプログラミングの「Hello World」には、JQueryバージョンがあります。 ソースコード jQueryクレイジーワードコンポジションゲーム これは空白のゲームであり、単語の文脈を知らないために奇妙な結果を生み出すことができます。 ソースコード jquery鉱山の掃引ゲーム

記事では、JavaScriptライブラリの作成、公開、および維持について説明し、計画、開発、テスト、ドキュメント、およびプロモーション戦略に焦点を当てています。

このチュートリアルでは、jQueryを使用して魅惑的な視差の背景効果を作成する方法を示しています。 見事な視覚的な深さを作成するレイヤー画像を備えたヘッダーバナーを構築します。 更新されたプラグインは、jQuery 1.6.4以降で動作します。 ダウンロードしてください

この記事では、ブラウザでJavaScriptのパフォーマンスを最適化するための戦略について説明し、実行時間の短縮、ページの負荷速度への影響を最小限に抑えることに焦点を当てています。

この記事では、JQueryとAjaxを使用して5秒ごとにDivのコンテンツを自動的に更新する方法を示しています。 この例は、RSSフィードからの最新のブログ投稿と、最後の更新タイムスタンプを取得して表示します。 読み込み画像はオプションです

Matter.jsは、JavaScriptで書かれた2D Rigid Body Physics Engineです。このライブラリは、ブラウザで2D物理学を簡単にシミュレートするのに役立ちます。剛体を作成し、質量、面積、密度などの物理的特性を割り当てる機能など、多くの機能を提供します。また、重力摩擦など、さまざまな種類の衝突や力をシミュレートすることもできます。 Matter.jsは、すべての主流ブラウザをサポートしています。さらに、タッチを検出し、応答性が高いため、モバイルデバイスに適しています。これらの機能はすべて、物理ベースの2Dゲームまたはシミュレーションを簡単に作成できるため、エンジンの使用方法を学ぶために時間をかける価値があります。このチュートリアルでは、このライブラリのインストールや使用法を含むこのライブラリの基本を取り上げ、


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

ZendStudio 13.5.1 Mac
強力な PHP 統合開発環境

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

SecLists
SecLists は、セキュリティ テスターの究極の相棒です。これは、セキュリティ評価中に頻繁に使用されるさまざまな種類のリストを 1 か所にまとめたものです。 SecLists は、セキュリティ テスターが必要とする可能性のあるすべてのリストを便利に提供することで、セキュリティ テストをより効率的かつ生産的にするのに役立ちます。リストの種類には、ユーザー名、パスワード、URL、ファジング ペイロード、機密データ パターン、Web シェルなどが含まれます。テスターはこのリポジトリを新しいテスト マシンにプルするだけで、必要なあらゆる種類のリストにアクセスできるようになります。

WebStorm Mac版
便利なJavaScript開発ツール

DVWA
Damn Vulnerable Web App (DVWA) は、非常に脆弱な PHP/MySQL Web アプリケーションです。その主な目的は、セキュリティ専門家が法的環境でスキルとツールをテストするのに役立ち、Web 開発者が Web アプリケーションを保護するプロセスをより深く理解できるようにし、教師/生徒が教室環境で Web アプリケーションを教え/学習できるようにすることです。安全。 DVWA の目標は、シンプルでわかりやすいインターフェイスを通じて、さまざまな難易度で最も一般的な Web 脆弱性のいくつかを実践することです。このソフトウェアは、

ホットトピック









