JavaScript を使用して、コンテナーに限定しながらタブ コンテンツの指スライドによる切り替え効果を実現するにはどうすればよいですか?
JavaScript を使用して、コンテナーに限定しながらタブ コンテンツの指スライドによる切り替え効果を実現するにはどうすればよいですか?
タブは、同じ領域に異なるコンテンツを表示するように切り替えることができる一般的な Web ページ レイアウトです。従来のクリック切り替え方式と比較して、指をスライドさせる切り替え効果は、モバイルデバイス上でよりフレンドリーで直感的です。この記事では、JavaScriptを使用してタブコンテンツの指スライド切り替え効果を実装し、コンテナに限定する方法を紹介します。
まず、タブのコンテンツをホストするための HTML 構造が必要です。タブに 3 つのラベルがあり、各ラベルがコンテンツ領域に対応すると仮定します。HTML 構造は次のようになります。
<div class="container"> <div class="tabs"> <div class="tab" id="tab1">标签1</div> <div class="tab" id="tab2">标签2</div> <div class="tab" id="tab3">标签3</div> </div> <div class="content"> <div class="panel" id="panel1">内容1</div> <div class="panel" id="panel2">内容2</div> <div class="panel" id="panel3">内容3</div> </div> </div>
上記のコードでは、.tabs
がタブを運ぶために使用されます。 label 、 .content
はタブのコンテンツを保持するために使用され、 .tab
と .panel
は特定のタブのラベルとコンテンツです。
次に、CSS を使用して、コンテナのサイズ、タブのラベルのスタイル、コンテンツ領域のスタイルなど、タブ コンテナのスタイルを設定する必要があります。指をスライドさせる効果を実現するには、overflow:hidden
を使用してコンテナのスコープを超えたコンテンツを非表示にする必要もあります。 CSS スタイルは次のようになります。
.container { width: 300px; height: 200px; overflow: hidden; } .tabs { display: flex; } .tab { flex: 1; text-align: center; } .content { width: 300%; display: flex; } .panel { flex: 1; text-align: center; }
次に、JavaScript を使用して指のスライド切り替え効果を実装し、それをコンテナーに制限します。 touchstart
、touchmove
、touchend
イベントを使用して、指のスライド操作をリッスンします。
const container = document.querySelector('.container'); const tabs = document.querySelectorAll('.tab'); const panels = document.querySelectorAll('.panel'); let startX = 0; let currentX = 0; container.addEventListener('touchstart', (event) => { startX = event.touches[0].clientX; }); container.addEventListener('touchmove', (event) => { event.preventDefault(); currentX = event.touches[0].clientX; }); container.addEventListener('touchend', () => { const deltaX = currentX - startX; const threshold = container.offsetWidth / 3; if (deltaX > threshold && currentIndex > 0) { currentIndex--; } else if (deltaX < -threshold && currentIndex < tabs.length - 1) { currentIndex++; } const translateX = -currentIndex * 100; tabs.forEach((tab) => tab.classList.remove('active')); panels.forEach((panel) => panel.classList.remove('active')); tabs[currentIndex].classList.add('active'); panels[currentIndex].classList.add('active'); container.querySelector('.content').style.transform = `translateX(${translateX}%)`; });
上記のコードでは、まず querySelector
メソッドを通じて DOM 要素を選択し、次に変数 startX
と currentX
を使用して指がスライドしたときの記録 開始横軸と現在の横軸。 touchstart
イベントでは、event.touches[0].clientX
を使用して、指がスライドし始めたときの横座標を取得します。 touchmove
イベントでは、event.touches[0].clientX
を通じて指の現在の横座標を取得し、preventDefault()
メソッドを使用してキャンセルします。デフォルトのスライディング イベント。 touchend
イベントでは、指のスライドの水平オフセット deltaX
を計算し、しきい値 threshold
に基づいてタブを切り替える必要があるかどうかを判断します。最後に、タブ スタイルとコンテンツ領域の transform
プロパティを操作して、正しいタブとコンテンツに切り替えます。
完全なサンプル コードについては、次のリンクを参照してください。
[https://codepen.io/](https://codepen.io/)
要約すると、 JavaScript を使用して、タブ コンテンツの指スライドによる切り替え効果を実装し、それをコンテナーに限定できます。 touchstart
、touchmove
、touchend
イベントをリッスンすることで、指のスライドによるタブの切り替え機能を実装したり、CSS スタイルを通じてコンテナ内のスライドを制限したりできます。このタイプのインタラクションは、モバイル デバイス上でよりフレンドリーかつ直感的になり、ユーザー エクスペリエンスが向上します。
以上がJavaScript を使用して、コンテナーに限定しながらタブ コンテンツの指スライドによる切り替え効果を実現するにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

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

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

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

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

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









複数の Windows ユーザーが、システム上の Google Chrome ブラウザで一部の Web サイトにアクセスしようとすると、Web ページにアクセスできないと苦情を述べています。また、エラー コード ERR_ADDRESS_UNREACHABLE とともに「サイトにアクセスできません」というメッセージがブラウザーに表示されます。この問題の背後には多くの潜在的な理由が考えられます。Web サイト サーバーの問題、プロキシ サーバー設定、不安定なインターネット接続などが原因である可能性があります。同様の問題が発生した場合でも、パニックに陥る必要はありません。この記事の問題を深く分析した結果、多くの解決策が得られました。続行する前に、次の回避策を試してください。 ユーザーが他のデバイスからサイトにアクセスしようとしていて、問題がないことを確認してください。

Windows ファイル エクスプローラーに付属する機能の 1 つは、選択したファイルのプレビューを表示するプレビュー ペインです。これは、ファイルを開く前にその内容を表示できることを意味します。ファイル エクスプローラーのプレビュー ペインには、Office 関連のドキュメント、PDF、テキスト ファイル、画像、ビデオなど、さまざまな種類のファイルのプレビューが表示されます。通常は正常に動作しますが、ファイルのプレビューが利用できない場合があります。最近、多くの Windows 11 ユーザーが、ファイル エクスプローラーのプレビュー ペインが機能せず、ファイルのプレビューを表示できないという問題を提起しました。 Windows コンピューターでプレビュー ペインが機能しないという問題に直面していますか?それでは、この記事を読み続けてください。ここでは、修正に役立つ修正のリストをまとめました。

MSIAfterburner は、ほとんどのグラフィックス カードに適したオーバークロック ツールです。それとは別に、システムのパフォーマンスを監視するために使用することもできます。しかし、一部のユーザーは MSIAfterburner が Windows 11 で動作しないと報告しました。これにはいくつかの理由が考えられますが、それについては次のセクションで説明します。ただし、これが発生すると、ゲームのプレイ中にパフォーマンスを変更したり監視したりすることができなくなります。予想通り、これはゲーマーにとって大きな課題となります。そのため、問題を理解し、Windows 11 で MSIAfterburned が機能しない問題に対する最も効果的な修正方法を説明するために、このチュートリアルを用意しました。

このオペレーティング システムは以前のバージョンよりもはるかに優れており、AutoHDR や DirectStorage などのゲーマー向けの機能を備えていますが、Valorant プレイヤーはゲームを起動するのに多少の問題がありました。これはゲーマーが以前に直面した最初の問題ではなく、Windows 11 で Valorant が開かないという別の問題もゲーマーを悩ませていますが、それを修正する方法については説明しました。現在、Windows 11 に切り替えた Valorant プレイヤーは、セキュア ブートと TPM2.0 サービスが原因で、実行中にゲーム メニューに終了オプションしか表示されない問題に直面しているようです。多くのユーザーが VAN1067 エラーを受け取りますが、心配する必要はありません。

Opera ブラウザの最新バージョンには、新しい自動ビデオ ポップアップ機能が含まれています。この機能を使用すると、ブラウザの別のタブに移動するとビデオが自動的にポップアップすることがわかります。このポップアップ ビデオはサイズを変更したり、画面上で移動したりできることがわかりました。 [ビデオ] タブに戻ると、タブが再開され、フローティング ウィンドウが消えます。ビデオ ポップアップ機能は、仕事中にビデオを見たいマルチタスク ユーザーにとって便利です。ただし、すべての Opera ユーザーがこの自動ビデオ ポップアップ機能を好むわけではありません。もしあなたが、タブを切り替えるたびにポップアップするビデオに悩まされている Opera ブラウザ ユーザーの 1 人なら、適切な投稿を見つけたことでしょう。ここでは、Opera でこのポップアップを無効にする方法を詳しく説明します。

この操作には対話型ウィンドウ ステーションが必要ですが、これはかなり奇妙なバグです。ユーザーがアプリを操作できるようにするソフトウェア ウィンドウが開いていないため、有効にする必要があります。このバグは、2021 Printing Nightmare の脆弱性と関連付けられています。しかし、それは今でも続いており、コンピューターやデバイスドライバーに影響を与えています。幸いなことに、修正するのは簡単です。そもそもなぜこのエラーが発生するのでしょうか?このエラーの修正方法を説明する前に、必ずこのエラーの原因を列挙してください。こうすることで、同じことが二度と起こらないようにするために必要な措置を講じることができます。破損したファイルによりコンピュータのファイルが台無しになる – 破損は、マルウェアから停電まで、さまざまな理由によって引き起こされる可能性があります。 SFC スキャンを実行することをお勧めします。過剰なウイルス対策アプリを使用している – ウイルス対策ソフトウェアがブロックすることがあります

私たちがプレイするほぼすべてのハイエンド ゲームは、効率的に実行するために DirectX に依存しています。ただし、一部のユーザーは、DirectX 関数 GetDeviceRemovedReasonfailedwith に続いてエラー理由が表示されると報告しました。上記の理由は平均的なユーザーにとって自明ではないため、根本原因と最も効果的な解決策を特定するには、ある程度の調査が必要です。作業を簡単にするために、このチュートリアルをこの問題専用にしました。次のセクションでは、潜在的な原因を特定し、DirectX 関数 GetDeviceRemovedReasonfailedwitherror を排除するためのトラブルシューティング手順を説明します。何が原因か

Windows 11 のネットワーク速度が遅い問題を解決するにはどうすればよいですか? 1. コンピュータを再起動します。デスクトップに移動し、Alt+F4 を押して、[Windows のシャットダウン] ボックスをアクティブにします。ドロップダウン メニューをクリックし、オプションのリストから [再起動] を選択します。次に、「OK」をクリックします。 Windows 11 で発生するほとんどの問題の最も効果的な解決策の 1 つは、コンピューターを再起動することです。問題の原因がバックグラウンド プロセスまたはエラーである場合は、オペレーティング システムを再起動すると問題が解消され、エラーが解決されます。コンピューターを再起動した後、Windows 11 のネットワーク速度の問題が解決されたかどうかを確認します。 2. PC がルーター (Wi-Fi ネットワーク) の範囲内にあることを確認します。ワイヤレス ネットワークの場合、デバイスがルーターから離れるほど、インターネット速度は遅くなります。
