javascript - 需要为单击和拖动列标题设置最小宽度
问题描述
单击并拖动时,我需要设置表头的最大宽度。
我试过css中的最大宽度和宽度。
th {
position: relative;
max-width: 5px;
}
但这没有用。这是我的代码的链接:
https://codepen.io/jasongardner/pen/QNOXym
我需要固定宽度以将表格拖动一定距离。
解决方案
我已经解决了你的问题。将您的 Javascript 更改为:
$(function() {
var startX,
startWidth,
$handle,
$table,
pressed = false;
$(document).on({
mousemove: function(event) {
if (pressed) {
var newWidth = startWidth + (event.pageX - startX);
if (newWidth > 300) {
$handle.width(300);
} else {
$handle.width(startWidth + (event.pageX - startX));
}
}
},
mouseup: function() {
if (pressed) {
$table.removeClass('resizing');
pressed = false;
}
}
}).on('mousedown', '.table-resizable th', function(event) {
$handle = $(this);
pressed = true;
startX = event.pageX;
startWidth = $handle.width();
$table = $handle.closest('.table-resizable').addClass('resizing');
}).on('dblclick', '.table-resizable thead', function() {
// Reset column sizes on double click
$(this).find('th[style]').css('width', '');
});
});
这是我更改的代码:
if (pressed) {
var newWidth = startWidth + (event.pageX - startX);
if (newWidth > 300) {
$handle.width(300);
} else {
$handle.width(startWidth + (event.pageX - startX));
}
}
我创建了变量“newWidth”并检查它是否大于 300。只有当它更小时,它才会设置新的宽度。所以实际上你可以用你想定义为最大宽度的任何数字替换 300。
希望这可以帮助
推荐阅读
- javascript - 使用 discord.js v12 解禁命令
- python - 如何挑选第一个带拉链的物品?| 蟒蛇 |
- javascript - 如何将嵌入 php 的选择元素中的 2 个变量传递给 javascript 函数?
- c++ - C ++头文件不创建随机数
- excel - 无法从一张工作表中获取 ID 并写入另一个工作簿
- php - 在选择查询中使用页面 php 页面 url id
- php - 从链接(服务器)下载 RAR 文件
- python - 对列表进行计算
- python-3.x - python中简单模式的正则表达式
- python - 在 python 上使用 ffmpeg 将 mkv 转换为 mp3 时出现“不支持的输入采样率设置”错误