使表格的标题列可左右拉伸jquery插件封装

前端之家收集整理的这篇文章主要介绍了使表格的标题列可左右拉伸jquery插件封装前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

插件名称命名为:jquery.tableresize.js,代码如下:

代码如下:
插件,能够使table的各列可以左右拉伸,从而使宽度变小或变大 用法: 单个table:$("#table_id").tableresize(); 页面所有table:$("table").tableresize(); */ (function ($) { $.fn.tableresize = function () { var _document = $("body"); $(this).each(function () { if (!$.tableresize) { $.tableresize = {}; } var _table = $(this); //设定ID var id = _table.attr("id") || "tableresize_" + (Math.random() * 100000).toFixed(0).toString(); var tr = _table.find("tr").first(),ths = tr.children(),_firstth = ths.first(); //设定临时变量存放对象 var cobjs = $.tableresize[id] = {}; cobjs._currentObj = null,cobjs._currentLeft = null; ths.mousemove(function (e) { var _this = $(this); var left = _this.offset().left,top = _this.offset().top,width = _this.width(),height = _this.height(),right = left + width,bottom = top + height,clientX = e.clientX,clientY = e.clientY; var leftside = !_firstth.is(_this) && Math.abs(left - clientX) <= 5,rightside = Math.abs(right - clientX) <= 5; if (cobjs._currentLeft || clientY > top && clientY < bottom && (leftside || rightside)) { _document.css("cursor","e-resize"); if (!cobjs._currentLeft) { if (leftside) { cobjs._currentObj = _this.prev(); } else { cobjs._currentObj = _this; } } } else { cobjs._currentObj = null; } }); ths.mouSEOut(function (e) { if (!cobjs._currentLeft) { cobjs._currentObj = null; _document.css("cursor","auto"); } }); _document.mousedown(function (e) { if (cobjs._currentObj) { cobjs._currentLeft = e.clientX; } else { cobjs._currentLeft = null; } }); _document.mouseup(function (e) { if (cobjs._currentLeft) { cobjs._currentObj.width(cobjs._currentObj.width() + (e.clientX - cobjs._currentLeft)); } cobjs._currentObj = null; cobjs._currentLeft = null; _document.css("cursor","auto"); }); }); }; })(jQuery);

页面代码为:

代码如下:
"> "> 表格1
表格2

原文链接:https://www.f2er.com/jquery/57234.html

猜你在找的jQuery相关文章