JavaScript を使用してテーブルの列幅のドラッグ アンド ドロップ調整を実装するにはどうすればよいですか?
JavaScript を使用してテーブルの列幅のドラッグ アンド ドロップ調整を実装するにはどうすればよいですか?
Web テクノロジーの発展に伴い、Web ページ上に表形式で表示されるデータがますます増えています。ただし、表の列幅がニーズを満たせない場合があり、内容がオーバーフローしたり、幅が不足したりすることがあります。この問題を解決するには、JavaScript を使用してテーブルの列幅のドラッグ アンド ドロップ調整機能を実装し、ユーザーが必要に応じて列幅を自由に調整できるようにします。
テーブル列幅のドラッグ アンド ドロップ調整機能を実装するには、次の 3 つの主な手順が必要です。
- マウス イベント監視: マウス イベント監視を追加する必要があります。ユーザーの操作行動をキャプチャするためにテーブルに追加します。
- 列幅の動的調整: ユーザーのドラッグ操作に応じて表の列の幅を動的に調整します。
- テーブルのステータスを記録する: ページが更新または再ロードされた後も調整結果を維持できるように、ユーザーが調整した列幅のステータスを記録します。
以下では、上記 3 つのステップの実装方法を詳細に紹介し、対応するコード例を示します。
- マウス イベント リッスン
まず、テーブルをリッスンする mousedown
イベントを追加します。ユーザーが表の列の端をクリックすると、ドラッグを開始して列の幅を調整できます。 mousedown
イベント処理関数では、マウス クリックの位置を記録する必要があります。
function tableMouseDown(event) { // 记录鼠标点击的位置 const startX = event.clientX; // ... }
次に、mousemove
イベント リスナーを document
オブジェクトに追加します。 mousemove
イベント ハンドラー関数では、マウスの移動距離を計算し、テーブルの列の幅を動的に変更する必要があります。
function documentMouseMove(event) { // 计算鼠标移动的距离 const distanceX = event.clientX - startX; // 动态改变表格列的宽度 // ... }
最後に、document
オブジェクトの mouseup
イベント リスナーを追加します。ユーザーがマウスを放すと、列幅のサイズ変更が停止します。
function documentMouseUp() { // 停止调整列宽 // ... }
- 列幅の動的調整
mousemove
イベント ハンドラーで、ユーザーのドラッグ操作に応じてテーブルの列の幅を動的に調整します。 。まず、現在どの列がドラッグされているかを確認する必要があります。これは、テーブルのヘッダーの th
要素によって確認できます。次に、計算されたマウスの移動距離に基づいて表の列の幅を動的に変更します。
function documentMouseMove(event) { // 计算鼠标移动的距离 const distanceX = event.clientX - startX; // 动态改变表格列的宽度 const th = document.elementFromPoint(startX, event.clientY); const columnIndex = th.cellIndex; const table = th.parentNode.parentNode.parentNode; const cells = table.querySelectorAll(`tr th:nth-child(${columnIndex + 1}), tr td:nth-child(${columnIndex + 1})`); const newWidth = parseFloat(getComputedStyle(cells[0]).width) + distanceX; for (const cell of cells) { cell.style.width = `${newWidth}px`; } }
- テーブルのステータスを記録する
ページが更新または再ロードされた後、ユーザーが調整した列幅を維持するには、列幅のステータスを記録する必要があります。テーブル。 localStorage
または cookie
を使用して、永続的なデータ ストレージを実現できます。
function documentMouseUp() { // 停止调整列宽 // ... // 记录表格的列宽状态 const columnWidths = {}; const table = document.querySelector('table'); const columns = table.querySelectorAll('th'); for (const column of columns) { columnWidths[column.cellIndex] = parseFloat(getComputedStyle(column).width); } localStorage.setItem('columnWidths', JSON.stringify(columnWidths)); }
ページが読み込まれると、保存された列幅の状態を localStorage
から読み取ってテーブルに適用できます。
window.addEventListener('load', function() { const columnWidths = JSON.parse(localStorage.getItem('columnWidths')); if (columnWidths) { const table = document.querySelector('table'); const columns = table.querySelectorAll('th'); for (const [index, width] of Object.entries(columnWidths)) { columns[index].style.width = `${width}px`; } } });
上記の 3 つの手順により、テーブルの列幅のドラッグ アンド ドロップ調整機能を実現できます。ユーザーはテーブルの列幅を自由に調整し、実際のニーズに応じてテーブルの表示効果を最適化できます。この記事がお役に立てば幸いです!
以上が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)

ホットトピック









1. 新しい PPT ファイルを作成し、例として [PPT Tips] という名前を付けます。 2. [PPT Tips]をダブルクリックしてPPTファイルを開きます。 3. 例として 2 行 2 列の表を挿入します。 4. 表の境界線をダブルクリックすると、上部ツールバーに[デザイン]オプションが表示されます。 5. [シェーディング]オプションをクリックし、[画像]をクリックします。 6. [画像]をクリックすると、画像を背景にした塗りつぶしオプションダイアログボックスが表示されます。 7. ディレクトリ内で挿入したいトレイを見つけ、「OK」をクリックして画像を挿入します。 8. テーブル ボックスを右クリックして、設定ダイアログ ボックスを表示します。 9. [セルの書式設定]をクリックし、[画像を網掛けとして並べる]にチェックを入れます。 10. [中央]、[ミラー]など必要な機能を設定し、[OK]をクリックします。注: デフォルトでは、表に画像が入力されます。

帳票を上手に作成できることは、経理や人事、財務の分野だけでなく、多くの営業職にとっても帳票の作成を学ぶことは非常に重要です。なぜなら、販売に関連するデータは非常に大規模かつ複雑であり、問題を説明するために文書に単純に記録することはできないからです。より多くの営業マンがExcelを使った表作成に習熟できるよう、売上予測に関する表作成の課題を編集部が紹介しますので、お困りの友人は必見です! 1. [売上予測・目標設定]xlsmを開き、各テーブルに格納されているデータを分析します。 2. 新規に[空のワークシート]を作成し、[セル]を選択し、[ラベル情報]を入力します。下に[ドラッグ]し、月を[塗りつぶします]。 [その他]のデータを入力し、[

1. ワークシートを開き、[スタート]-[条件付き書式]ボタンを見つけます。 2. [列の選択] をクリックし、条件付き書式を追加する列を選択します。 3. [条件付き書式]ボタンをクリックするとオプションメニューが表示されます。 4. [条件付きルールを強調表示]-[間]を選択します。 5. ルールを入力します: 20、24、濃い緑色のテキストと濃い塗りつぶし。 6. 確認後、選択した列のデータは、設定に従って対応する数値、テキスト、セル ボックスで色付けされます。 7. 競合のない条件付きルールは繰り返し追加できますが、競合するルールの場合、WPS は以前に確立された条件付きルールを最後に追加したルールに置き換えます。 8. [Between] ルール 20 ~ 24 と [Less than] 20 の後にセル列を繰り返し追加します。 9. ルールを変更する必要がある場合は、ルールをクリアしてからルールをリセットします。

Word の表で数を数えるという問題に遭遇することがあります。通常、このような問題に遭遇すると、ほとんどの生徒は Word の表を Excel にコピーして計算しますが、黙って電卓を手に取る生徒もいます。簡単に計算する方法はありますか?もちろんありますが、実はWordでも合計額を計算することができます。それで、その方法を知っていますか?今日は、一緒に見ていきましょう!困っている友達はすぐに集めてください。手順の詳細: 1. まず、コンピューターで Word ソフトウェアを開き、処理する必要がある文書を開きます。 (図のように) 2. 次に、(図のように) 合計値が配置されているセルにカーソルを置き、[メニュー バー] をクリックします。

WebSocketとJavaScript:リアルタイム監視システムを実現するためのキーテクノロジー はじめに: インターネット技術の急速な発展に伴い、リアルタイム監視システムは様々な分野で広く利用されています。リアルタイム監視を実現するための重要なテクノロジーの 1 つは、WebSocket と JavaScript の組み合わせです。この記事では、リアルタイム監視システムにおける WebSocket と JavaScript のアプリケーションを紹介し、コード例を示し、その実装原理を詳しく説明します。 1.WebSocketテクノロジー

私たちは Excel で表を作成したり編集したりすることがよくありますが、ソフトウェアに触れたばかりの初心者にとって、Excel を使用して表を作成する方法は私たちほど簡単ではありません。以下では、初心者、つまり初心者がマスターする必要があるテーブル作成のいくつかの手順について演習を行います。初心者向けのサンプルフォームを以下に示します。入力方法を見てみましょう。 1. Excel ドキュメントを新規作成するには 2 つの方法があります。 [デスクトップ]-[新規作成]-[xls]ファイル上の何もない場所でマウスを右クリックします。 [スタート]-[すべてのプログラム]-[Microsoft Office]-[Microsoft Excel 20**] を実行することもできます。 2. 新しい ex ファイルをダブルクリックします。

表を作るとき、真っ先に思いつくのがExcelソフトで表を作ることですが、実はWordソフトを使うととても便利なのをご存知ですか?Wordソフトで表を作ると連番を入力する必要がある場合があります。いちいち手で入力するととても面倒です。実はワードソフトには数字や連番を自動で挿入できる機能があるので、エディターで自動で番号を挿入する方法を学びましょう。またはシリアル番号を Word テーブルに挿入します。 1. まず Word 文書を作成し、表を挿入します。 2. 自動シリアル番号または数字を挿入する列またはセルを選択します。 3.「スタート」-「番号」をクリックします。 4. いずれかのスタイル番号を選択します。 5.

他の人の WPS ドキュメントのテーブル カラーを見ると、効果はカラフルで美しいですが、私たちは単調な黒しかありません。表を色で埋めなければならない場合、多くの学生がそうするでしょう。しかし、WPS ドキュメント China でテーブルの色を設定したい場合、多くの学生は間違いなく混乱するでしょう。今日は、WPS ドキュメントテーブルの色の設定方法を学びましょう。皆様のお役に立てればと思い、資料を作成させていただきました。手順は次のとおりです。 1. WPS ドキュメント内に表を描画し、線の色を変更する表を右クリックする必要があります。 2. 次に、表上でマウスを右クリックし、ポップアップメニューに「枠線と網かけ」が表示されます。 3. このとき、[境界線と網かけ]オプションが開きます。
