演示地址:http://www.daixiaorui.com/Public/demo/js/drag_tb/

本文章来源于 代潇瑞博客 原文地址:http://www.daixiaorui.com/read/98.html

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />

<title>jquery可拖动表格调整列格子的宽度大小</title>

</head>

<body>

<style type="text/css">

table{border-collapse:collapse;border-spacing:0;}

.listext th{background:#eee;color:#3366cc;}

.listext th,.listext td{border:solid 1px #ddd;text-align:left;padding:10px;font-size:14px;}

.rc-handle-container{position:relative;}

.rc-handle{position:absolute;width:7px;cursor:ew-resize;*cursor:pointer;margin-left:-3px;}

</style>

<table width="100%" class="listext">

<tr>

<th>www</th>

<th>daixiaorui</th>

<th>com</th>

</tr>

<tr>

<td>欢迎</td>

<td>您的</td>

<td>访问</td>

</tr>

<tr>

<td>欢迎</td>

<td>您的</td>

<td>访问</td>

</tr>

</table>

<script type="text/javascript" src="jquery.js"></script>

<script type="text/javascript" src="jquery.resizableColumns.js"></script>

<script type="text/javascript">

$(function(){

$("table").resizableColumns({});

});

</script>

</body>

</html>

最后说明一下,本实例没有提供下载,如果要正常运行使用,可以点击上面的“演示地址”进去,然后右键查看源文件,里面有js路径,把路径复制到浏览器下载下来就可以了。如果有任何问题,可以与代潇瑞博客交流。

文章出自:http://www.daixiaorui.com/read/98.html 本站所有文章,除注明出处外皆为原创,转载请注明本文地址,版权所有。

本文章来源于 代潇瑞博客 原文地址:http://www.daixiaorui.com/read/98.html

JS文件代码如下

var __bind = function(fn, me){ return function(){ return fn.apply(me, arguments); }; },__slice = [].slice;(function($, window) {var ResizableColumns;ResizableColumns = (function() {ResizableColumns.prototype.defaults = {store: window.store,rigidSizing: false};function ResizableColumns($table, options) {this.mousedown = __bind(this.mousedown, this);var _this = this;this.options = $.extend({}, this.defaults, options);this.$table = $table;this.tableId = this.$table.data('resizable-columns-id');this.createHandles();this.restoreColumnWidths();this.syncHandleWidths();$(window).on('resize.rc', (function() {return _this.syncHandleWidths();}));}ResizableColumns.prototype.destroy = function() {this.$handleContainer.remove();this.$table.removeData('resizableColumns');return $(window).off('.rc');};ResizableColumns.prototype.createHandles = function() {var _this = this;this.$table.before((this.$handleContainer = $("<div class='rc-handle-container' />")));this.$table.find('tr th').each(function(i, el) {var $handle;if (_this.$table.find('tr th').eq(i + 1).length === 0 || (_this.$table.find('tr th').eq(i).attr('data-noresize') != null) || (_this.$table.find('tr th').eq(i + 1).attr('data-noresize') != null)) {return;}$handle = $("<div class='rc-handle' />");$handle.data('th', $(el));return $handle.appendTo(_this.$handleContainer);});return this.$handleContainer.on('mousedown', '.rc-handle', this.mousedown);};ResizableColumns.prototype.syncHandleWidths = function() {var _this = this;this.$handleContainer.width(this.$table.width());return this.$handleContainer.find('.rc-handle').each(function(_, el) {return $(el).css({left: $(el).data('th').outerWidth() + ($(el).data('th').offset().left - _this.$handleContainer.offset().left),height: _this.$table.height()});});};ResizableColumns.prototype.saveColumnWidths = function() {var _this = this;return this.$table.find('tr th').each(function(_, el) {var id;if ($(el).attr('data-noresize') == null) {id = _this.tableId + '-' + $(el).data('resizable-column-id');if (_this.options.store != null) {return store.set(id, $(el).width());}}});};ResizableColumns.prototype.restoreColumnWidths = function() {var _this = this;return this.$table.find('tr th').each(function(_, el) {var id, width;id = _this.tableId + '-' + $(el).data('resizable-column-id');if ((_this.options.store != null) && (width = store.get(id))) {return $(el).width(width);}});};ResizableColumns.prototype.mousedown = function(e) {var $currentGrip, $leftColumn, $rightColumn, idx, leftColumnStartWidth, rightColumnStartWidth,_this = this;e.preventDefault();this.startPosition = e.pageX;$currentGrip = $(e.currentTarget);$leftColumn = $currentGrip.data('th');leftColumnStartWidth = $leftColumn.width();idx = this.$table.find('tr th').index($currentGrip.data('th'));$rightColumn = this.$table.find('tr th').eq(idx + 1);rightColumnStartWidth = $rightColumn.width();$(document).on('mousemove.rc', function(e) {var difference, newLeftColumnWidth, newRightColumnWidth;difference = e.pageX - _this.startPosition;newRightColumnWidth = rightColumnStartWidth - difference;newLeftColumnWidth = leftColumnStartWidth + difference;if (_this.options.rigidSizing && ((parseInt($rightColumn[0].style.width) < $rightColumn.width()) && (newRightColumnWidth < $rightColumn.width())) || ((parseInt($leftColumn[0].style.width) < $leftColumn.width()) && (newLeftColumnWidth < $leftColumn.width()))) {return;}$leftColumn.width(newLeftColumnWidth);$rightColumn.width(newRightColumnWidth);return _this.syncHandleWidths();});return $(document).one('mouseup', function() {$(document).off('mousemove.rc');return _this.saveColumnWidths();});};return ResizableColumns;})();return $.fn.extend({resizableColumns: function() {var args, option;option = arguments[0], args = 2 <= arguments.length ? __slice.call(arguments, 1) : [];return this.each(function() {var $table, data;$table = $(this);data = $table.data('resizableColumns');if (!data) {$table.data('resizableColumns', (data = new ResizableColumns($table, option)));}if (typeof option === 'string') {return data[option].apply(data, args);}});}});
})(window.jQuery, window);

jquery可拖动表格调整列格子的宽度大小 本文章来源于 代潇瑞博客 原文地址:http://www.daixiaorui.com/read/98.html相关推荐

  1. markdown 表格调整列宽

    利用简单 html 语法调列宽的方法. Case 1: 预留宽度,用于打印后填写 一个比较简单粗暴的方法自然是加一段空格符           一个更加优雅的方法则是使用空的 <img>标 ...

  2. 实现option上下移动_用jQuery实现lt;selectgt;选项上下移动 - 不要哀求 学会争取 若是如此 终有所获 - ITeye博客...

    嘖嘖嘖,短短兩個API串接: $opt.next().after($opt)就做出了向下移動的效果.記得以往用純Javascript寫,還得判斷是否為最後一個,若是就不能下移:然後上下位置交換得用op ...

  3. 深入学习 jQuery 选择器系列第三篇——过滤选择器之索引选择器 - 小火柴的蓝色理想 - 博客园...

    博客地址:   http://www.cnblogs.com/xiaohuochai/p/5807292.html#3559878 写的很细致的博文, 手动收藏+转发. 转载于:https://www ...

  4. 网络安全职业道路_汽车安全我们的道路

    网络安全职业道路 意见 (OPINION) In 2010, security researchers at the University of California San Diego and th ...

  5. 判断jQuery选择器结果为空 - CSDN博客

    判断jQuery选择器结果为空 - CSDN博客 原文:判断jQuery选择器结果为空 - CSDN博客 jQuery选择器获取到的是一个对象,所以无论页面上存在或者不存在元素,这个对象都不为空.因此 ...

  6. 拖动 html表格单元格宽度,jQuery实现拖动调整表格单元格大小的代码实例

    jQuery实现的拖动调整表格td单元格的大小: 在实际应用中,可能有这样的需求,那就是需要调整td单元格的大小. 也许是为了便于观察,也许是其他原因,反正这样的需求是有的,下面就分享一段能够实现此功 ...

  7. bootstrap 可以拖动 表格宽度_word表格技巧:如何快捷调整表格

    有人曾经说过这么一句话:复杂的表格Excel做,简单的表格Word做.例如:个人简历.日程表.工作安排.请假单等等一些简单的表格,一般都会首选Word来制作完成. 但是,要想制作出符合心意的Word表 ...

  8. 调整Word表格的列宽和行高(转)

    调整Word表格的列宽和行高(转) 创建表格时,Word表格的列宽往往采用默认值,我们可以对其进行修改.根据不同的需要,有四种调整方法可供选择使用: 一.利用鼠标左键在分隔线上拖动. 二.利用鼠标左键 ...

  9. 计算机做表格的行高和列宽,表格中列和行的插入与删除及行高和列宽的调整——想象力电脑应用...

    大多数数据输入到工作表后都需要进行管理和格式设置,以获得更好的显示效果,也便于分辨各类型的数据.这里我们将介绍行或列的插入与删除和行高和列宽的调整. 一.行或列的插入与删除 在输入数据时,如果遗漏了某 ...

最新文章

  1. mxnet中ndarray*ndarray用来作为掩码进行与运算的用法
  2. Java并发编程:Thread类的使用
  3. 游戏对象的移动旋转缩放
  4. 一些自己编写的字符串操作函数
  5. 蓝桥杯历届试题----分糖果(模拟)
  6. androidannotations gradle Android Studio
  7. 华为云推出限量NFT云宝,区块链技术为你的数字资产保驾护航
  8. 关于北大陈秉乾教授的一些趣事
  9. IDEA中识别Git上新加的分支
  10. CString char BSTR 转换
  11. 4站地铁50多分钟,百度地图怎么算的
  12. 写失败数据写入成功_马克·吐温写小说有多成功,做生意就有多失败,创业亏的就剩烟囱...
  13. vscode 修改注释颜色
  14. 【新星计划】Matlab绘制信号包络线hilbert或者envelope实现
  15. 语言独立性和与语言无关的组件
  16. php 聚合广告平台,GitHub - mystudytime/easy-amazon-advertising: 基于 amazon advertising v2 接口的 PHP 广告信息组件...
  17. 第14节 单臂路由工作原理及简单实验
  18. ps修改头发颜色----和修改衣服颜色-------给褶皱的衣服添加图案
  19. mv150us无线网卡驱动linux,水星MW150US2.0驱动-水星MW150US无线网卡驱动下载v2.0 官方最新版-西西软件下载...
  20. php过滤特殊表情符号(亲测可用)

热门文章

  1. Java练习:计算中国人民共和国成立了多少天
  2. strcmp与stricmp的认识
  3. Kubernetes(十一)Kubernetes ingress的实现原理
  4. 盖档案骑缝章的样本_盖印鉴骑缝章的技巧
  5. win7进不了系统怎么办
  6. RHEL目录和文件操作:Linux文件系统管理
  7. ipad ios 电子杂志制作软件 ipad ios 电子杂志制作开发软件
  8. c++小游戏[2.0.1测试版本]和[2.2版本]
  9. Windows Server 2008 显示隐藏文件 扩展名
  10. MTK平台添加虚拟sensor