HTML+jquery 可調整欄寬的表格

更新 發佈閱讀 8 分鐘

表格可調整欄位,這是很常用到的功能,先看結果如下:

可調整欄寬的表格

可調整欄寬的表格

我用了一個DIV包在TABLE之外,所以這個DIV的CSS也會影響TABLE寬度,

以下是程式碼:

<!DOCTYPE html>
<html lang="zh-TW">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>可調整欄寬的表格</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<style>
.table-container {
position: relative;
border: 1px solid #ccc;
padding: 10px;
overflow: auto; /* 外層DIV X方向有捲軸 */
width: 500px; /* DIV寬度 */
height: 400px; /* DIV高度 */
}
table {
border-collapse: separate;/*separate;/*collapse;*/
border-spacing: 0.5px;
width: 820px;
}
th, td {
border: 1px solid #ccc;
padding: 8px;
position: relative;
}
th {
background: #f2f2f2;
}
.resizer {
width: 5px;
cursor: col-resize;
position: absolute;
right: 0;
top: 0;
height: 100%;
z-index: 10; /* 確保在最上面 */
}
</style>
</head>
<body>
<div class="table-container">
<table>
<thead>
<tr>
<th style="width:80px;">欄位 1<div class="resizer"></div></th>
<th style="width:80px;">欄位 2<div class="resizer"></div></th>
<th style="width:200px;">欄位 3<div class="resizer"></div></th>
<th style="width:200px;">欄位 4<div class="resizer"></div></th>
<th style="width:200px;">欄位 5<div class="resizer"></div></th>
</tr>
</thead>
<tbody>
<tr>
<td>資料 1-1</td>
<td>資料 1-2</td>
<td>資料 1-3</td>
<td>資料 1-4</td>
<td>資料 1-5</td>
</tr>
<tr>
<td>資料 2-1</td>
<td>資料 2-2</td>
<td>資料 2-3</td>
<td>資料 2-4</td>
<td>資料 2-5</td>
</tr>
</tbody>
</table>
</div>
<script>
$(document).ready(function() {
// 自由調整 Table欄位大小
let isResizing = false;
let lastDownX;
let lastX;
let $th;
let $table;
$(".resizer").mousedown(function(e) {
isResizing = true;
lastX = e.pageX;
//console.log("lastX:"+lastX); // debug 用
$th = $(this).parent(); // 獲取當前的 th 元素
$table = $th.closest("table"); // 獲取對應的 table 元素
e.preventDefault(); // 防止選取文本
});
$(document).mousemove(function(e) {
if (isResizing) {
const diffX = e.pageX - lastX; // 計算移動的距離
const newWidth = Math.max($th.width() + diffX,20); // 更新寬度
const newTableWidth = $table.width() + diffX; // 獲取對應的 table 元素
// debug 用
//console.log("lastX:"+lastX+" e.pageX:"+e.pageX+" diffX:"+diffX + " $th.width():"+$th.width()+ " newWidth:"+newWidth);
$th.css('width', newWidth + 'px');
$table.css('width', newTableWidth + 'px');
lastX = e.pageX; // 更新滑鼠 X方向位置
}
});
$(document).mouseup(function() { // 滑鼠右鍵放開
isResizing = false;
});
});
</script>
</body>
</html>

重點在於 TABLE 要先設定好寬度,滑鼠拉動表格框線要一直計算移動距離,

即時修改TABLE和TH寬度。

寫的不是很好,但可以用就好。

留言
avatar-img
天空
3會員
25內容數
如果可以無所事事的放空,那才是真的幸福?
天空的其他內容
2025/03/06
使用 ldap3 2.9.1 pip install ldap3​ python: from ldap3 import Server, Connection, SIMPLE, SYNC, ALL import pandas as p d import json # LDAP 伺服器地址
2025/03/06
使用 ldap3 2.9.1 pip install ldap3​ python: from ldap3 import Server, Connection, SIMPLE, SYNC, ALL import pandas as p d import json # LDAP 伺服器地址
2025/03/06
最近看了一本書「29歲開始做,43歲提早退休…」 書中的大意是, 作者由29歲起,每月將收入的50%都存起來投資基金和買保險(養老險), 到了43歲時因職場上的不順遂,毅然決定提前退休。 書中並沒有詳細指出作者是如何「投資基金和買保險」來建立被動收入, 本書的內容比較多的是描述作者的退休生
Thumbnail
2025/03/06
最近看了一本書「29歲開始做,43歲提早退休…」 書中的大意是, 作者由29歲起,每月將收入的50%都存起來投資基金和買保險(養老險), 到了43歲時因職場上的不順遂,毅然決定提前退休。 書中並沒有詳細指出作者是如何「投資基金和買保險」來建立被動收入, 本書的內容比較多的是描述作者的退休生
Thumbnail
2024/12/19
什麼是 Active Directory? Active Directory (AD)是企業經常用來做電腦登入認證的系統服務,透過 AD 伺服器 IT管理員能夠用來儲存 使用者(User)、使用者群組(Group)和電腦(Computer) …等的相關資訊以進行認證與網域存取管理。 如何
Thumbnail
2024/12/19
什麼是 Active Directory? Active Directory (AD)是企業經常用來做電腦登入認證的系統服務,透過 AD 伺服器 IT管理員能夠用來儲存 使用者(User)、使用者群組(Group)和電腦(Computer) …等的相關資訊以進行認證與網域存取管理。 如何
Thumbnail
看更多
你可能也想看
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
5 月將於臺北表演藝術中心映演的「2026 北藝嚴選」《海妲・蓋柏樂》,由臺灣劇團「晃晃跨幅町」製作,本文將以從舞台符號、聲音與表演調度切入,討論海妲・蓋柏樂在父權社會結構下的困境,並結合榮格心理學與馮.法蘭茲對「阿尼姆斯」與「永恆少年」原型的分析,理解女人何以走向精神性的操控、毀滅與死亡。
Thumbnail
css display grid可以達到類似table span的排版效果,但還是有些差異,table的span其實是合併,css grid比較像是要佔幾格的意思。 如下程式碼為例,colspan是要往右合併的意思,因此會少一個td。 E css grid colspan sample code:
Thumbnail
css display grid可以達到類似table span的排版效果,但還是有些差異,table的span其實是合併,css grid比較像是要佔幾格的意思。 如下程式碼為例,colspan是要往右合併的意思,因此會少一個td。 E css grid colspan sample code:
Thumbnail
本章節介紹了HTML中的表格和表單元素。表格部分詳細說明了table、tr、td等標籤的用途,以及如何構建結構化數據。表單部分則涵蓋了form、input、button等標籤,解釋了如何創建用戶交互界面以收集和提交數據。章節通過實例代碼展示了這些元素的實際應用。
Thumbnail
本章節介紹了HTML中的表格和表單元素。表格部分詳細說明了table、tr、td等標籤的用途,以及如何構建結構化數據。表單部分則涵蓋了form、input、button等標籤,解釋了如何創建用戶交互界面以收集和提交數據。章節通過實例代碼展示了這些元素的實際應用。
Thumbnail
人們對於學習HTML的興趣持續增長,本篇文章將解析HTML的架構、標籤、排序方式、標籤屬性和標籤結構解析的相關課程,為讀者提供全方位的學習體驗。
Thumbnail
人們對於學習HTML的興趣持續增長,本篇文章將解析HTML的架構、標籤、排序方式、標籤屬性和標籤結構解析的相關課程,為讀者提供全方位的學習體驗。
Thumbnail
CSS 裡的「寬度,最大寬度,最小寬度」分別是什麼呢? ➊ width 用來設定元素的寬度,且 width 作用範圍僅在 content-box 區塊 ➋ max-width → 用來設定元素的最大寬度 ➌ min-width → 用來設定元素的最小寬度
Thumbnail
CSS 裡的「寬度,最大寬度,最小寬度」分別是什麼呢? ➊ width 用來設定元素的寬度,且 width 作用範圍僅在 content-box 區塊 ➋ max-width → 用來設定元素的最大寬度 ➌ min-width → 用來設定元素的最小寬度
Thumbnail
通過VBA程式設計,我們可以實現對Word表格的快速、批量操作,提高文檔處理的效率和精度。在本文中,我們將介紹如何使用VBA為Word表格添加邊框、調整網底顏色等排版技巧,幫助您更好地完成文檔的美化和排版。
Thumbnail
通過VBA程式設計,我們可以實現對Word表格的快速、批量操作,提高文檔處理的效率和精度。在本文中,我們將介紹如何使用VBA為Word表格添加邊框、調整網底顏色等排版技巧,幫助您更好地完成文檔的美化和排版。
Thumbnail
EXCEL很常用來輸入與紀錄與多資料,而標準的資料一定會帶有一個標題,但如果標題如果太長,常常會導致頁面過於寬鬆,使得無法一個版面涵蓋所有內容。 下圖為例,右邊其實還有一欄資料,但是標題太長導致有部分資料無法顯示於頁面中,這種狀況在列印時其實也會浪費紙張。 如果直接調整欄寬,則會
Thumbnail
EXCEL很常用來輸入與紀錄與多資料,而標準的資料一定會帶有一個標題,但如果標題如果太長,常常會導致頁面過於寬鬆,使得無法一個版面涵蓋所有內容。 下圖為例,右邊其實還有一欄資料,但是標題太長導致有部分資料無法顯示於頁面中,這種狀況在列印時其實也會浪費紙張。 如果直接調整欄寬,則會
Thumbnail
JavaScript30 傳送門:https://javascript30.com/ 透過 JS 控制 CSS 變數 今天的挑戰是要能透過滑動圖片上面的 <input type="range"> 來改變圖片的三個屬性。 以前在 CSS 裡面看到 var(--xxxx) 這種東西都很
Thumbnail
JavaScript30 傳送門:https://javascript30.com/ 透過 JS 控制 CSS 變數 今天的挑戰是要能透過滑動圖片上面的 <input type="range"> 來改變圖片的三個屬性。 以前在 CSS 裡面看到 var(--xxxx) 這種東西都很
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
在數位化時代,傳統表單設計方式已無法滿足現代的需求。Tally 的出現,讓我們重新思考表單設計的可能性。無論是問卷調查還是數據收集,Tally 都將讓你感受到從未有過的便捷和效率。它結合了簡潔的設計與強大的功能,讓你可以輕鬆設計出專業和高效的問卷。現在,讓我們一起來體驗 Tally 的魅力吧!
Thumbnail
在數位化時代,傳統表單設計方式已無法滿足現代的需求。Tally 的出現,讓我們重新思考表單設計的可能性。無論是問卷調查還是數據收集,Tally 都將讓你感受到從未有過的便捷和效率。它結合了簡潔的設計與強大的功能,讓你可以輕鬆設計出專業和高效的問卷。現在,讓我們一起來體驗 Tally 的魅力吧!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News