`
adrift
  • 浏览: 19146 次
  • 性别: Icon_minigender_1
  • 来自: 北京
最近访客 更多访客>>
社区版块
存档分类
最新评论

随意改变table的大小

 
阅读更多

适用于chrome,firefox和ie8,其它版本未知 
定义一个3X3的表格,最中间的那个单元格存放内容,其余的单元格用来做改变大小的手柄
(function($){
$.fn.TableResizer = function(handles) {
  if(!handles) handles = "0123456789";
  this.each(function() {
    var tab = $(this);
    $.each(tab.find(">tbody>tr>td"), function(i){
      var handle = parseInt(handles.charAt(i));
      if(handle==4) return;
      $(this).mousedown(function(e){
        var mouseDownX=e.clientX, mouseDownY=e.clientY;
        var oPlaceholder = $("<div style='filter:alpha(opacity=0);opacity:0;z-index:1;background-color:red;"
            +"width:5px;height:5px;position:absolute;margin:0;padding:0;cursor:"+$(this).css("cursor")
            +";left:"+(e.clientX-2)+"px;top:"+(e.clientY-2)+"px'/>").appendTo("body");
        var originWidth = tab.width(), originHeight = tab.height(), originPos = tab.position();
        var fOnMove = function(e) {
          if(!mouseDownX) return;
          oPlaceholder.css({left:e.clientX-2, top:e.clientY-2});
          var deltaX = e.clientX - mouseDownX, deltaY = e.clientY - mouseDownY, idx = handle;
          if(idx==0)
            tab.css({left:originPos.left+deltaX, width:originWidth-deltaX, top:originPos.top+deltaY, height:originHeight-deltaY});
          else if(idx==1)
            tab.css({top:originPos.top+deltaY, height:originHeight-deltaY});
          else if(idx==2)
            tab.css({width:originWidth+deltaX, top:originPos.top+deltaY, height:originHeight-deltaY});
          else if(idx==3)
            tab.css({left:originPos.left+deltaX, width:originWidth-deltaX});
          else if(idx==5)
            tab.width(originWidth+deltaX);
          else if(idx==6)
            tab.css({left:originPos.left+deltaX, width:originWidth-deltaX, height:originHeight+deltaY});
          else if(idx==7)
            tab.height(originHeight+deltaY);
          else
            tab.css({width:originWidth+deltaX, height:originHeight+deltaY});
          return false;
        }
        var fOnUp = function() {
          mouseDownX = null;
          $(this).unbind("mousemove", fOnMove).unbind("mouseup", fOnUp);
          oPlaceholder.remove();
        }
        $(document).mousemove(fOnMove).mouseup(fOnUp);
        return false;
      })
    })
  })
  return this;
}
})(jQuery)
 使用的例子:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
"http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<title>无标题文档</title>
<script src="jquery.js"></script>
<script src="jq.table.resizer.js"></script>
<script>
$(function(){
  $("#t1").TableResizer();
});
</script>
</head>
<body>
<table id="t1" style="position:absolute;left:10px;top:50px;border-spacing:0px;border-spacing:expression(this.cellSpacing=0);width:100px" border="0">
<tr style="height:2px">
<td style="background-color:blue;width:2px;cursor:nw-resize"></td>
<td style="background-color:pink;cursor:n-resize"></td>
<td style="background-color:blue;width:2px;cursor:ne-resize"></td>
</tr>
<tr>
<td style="background-color:pink;cursor:w-resize"></td>
<td style="background-color:yellow">
Line1
Line2
</td>
<td style="background-color:pink;cursor:e-resize"></td>
</tr>
<tr style="height:2px">
<td style="background-color:blue;cursor:sw-resize"></td>
<td style="background-color:pink;cursor:s-resize"></td>
<td style="background-color:blue;cursor:se-resize"></td>
</tr>
</table>
</body>
</html>
 

分享到:
评论

相关推荐

    MFC中子对话框的大小跟随主对话框大小进行缩放

    包含一个主对话框和两个子对话框(在Tab控件中显示)。常用的MFC控件(包括字体、BMP控件)都可以进行缩放,子...界面的控件ID循环查找存入数组中(这样界面可随意添删控件也不需要改变代码,注意控件ID不允许重复!)

    DLL修改工具、可方便修改任务DLL文件。

    4. **编辑对话框**:对于对话框资源,eXeScope提供了详细的编辑界面,允许调整控件的位置、大小、属性,甚至改变对话框本身的布局。 5. **修改版本信息**:你可以更新DLL或EXE的版本信息,如产品名称、版本号、版权...

    MySQL性能优化配置参数之thread_cache和table_cache详解

    默认值一般能满足大多数场景的需求,除非有特殊需求,否则不建议随意修改。 3. thread_handling:定义了MySQL如何处理连接请求。在5.1.19版本后新增的特性,有两个选项:no-threads和one-thread-per-connection。no...

    用SQL命令创建数据表.pptx

    - **初始大小**: `5MB`,表示创建时分配的空间大小。 - **最大大小**: `20MB`,数据库文件能够增长到的最大尺寸。 - **增长幅度**: `2MB`,每次文件自动增长时的增量。 - **日志文件属性**: - **逻辑日志文件名...

    mysql提示Changed limits: max_open_files: 2048 max_connections: 1910 table_cache: 64的解决

    每打开一个表都会占用一定的内存,因此,`table_cache` 的设置应考虑到服务器的内存大小和预期的并发查询数量。 **解决方法** 当你看到上述提示时,说明MySQL服务器在启动时尝试设置的参数超过了系统的实际限制。...

    PROE配置文件config.pro的详细应用

    - 避免随意更改不了解含义的选项,以免引起不可预料的问题。 - 如果遇到配置问题,可以通过官方文档或社区论坛寻求帮助。 综上所述,通过深入理解并合理利用`config.pro`文件,可以更好地发挥PRO/E的强大功能,...

    waf开发案例.pdf

    5. `editor`和`alarm`属性遵循特定格式,不应随意修改。 以上内容详细介绍了WAF开发案例中涉及的关键技术和步骤,为开发人员提供了实际操作的指导。理解和掌握这些知识点有助于构建更安全、高效的Web应用防护系统。

    《程序天下:JavaScript实例自学手册》光盘源码

    3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框滚动导航 3.17 按钮获取焦点 3.18 文本框获取焦点弹出下拉框 3.19 文本框简单的单击效果 3.20 文字的打字效果 3.21 文字滚动 3.22 文字滑动 3.23 文字...

    程序天下:JavaScript实例自学手册

    3.14 随意改变大小的文本框 3.15 文本框的自动全选 3.16 文本框滚动导航 3.17 按钮获取焦点 3.18 文本框获取焦点弹出下拉框 3.19 文本框简单的单击效果 3.20 文字的打字效果 3.21 文字滚动 3.22 文字滑动 3.23 文字...

    数据库招聘试题数据库招聘试题.doc

    2. **修改child_detail表中type为"kkd"的记录**: ```sql UPDATE child_detail SET cname = 'declear', coment = '02' WHERE type = 'kkd'; ``` ### DBA部分 1. **表连接方式**:内连接(INNER JOIN)、左...

    2021-2022计算机二级等级考试试题及答案No.18395.docx

    - **修改表**:使用`ALTER TABLE`语句。 - **删除表**:使用`DROP TABLE`语句。 这些操作是数据库管理的基础。 综上所述,这些知识点涵盖了从操作系统层面的文件管理到数据库管理和编程语言应用等多个方面,对于...

    2021-2022计算机二级等级考试试题及答案No.11919.docx

    17. 数字化图书馆是图书馆自动化发展的高级阶段,它涉及多媒体信息处理,但不能随意改变书籍内容。 18. Sub过程和Function过程在VB等语言中可以用Static、Private或Public等关键字来定义。 19. 控件的Caption属性...

    2021-2022计算机二级等级考试试题及答案No.16692.docx

    9. PowerPoint中的文本框大小:PowerPoint允许用户修改预留文本框的大小,因此答案错误。 10. Java Applet事件处理:在Java Applet中,处理事件通常需要导入`java.awt.event.*`包,包含事件监听器和事件处理的相关...

    2021-2022计算机二级等级考试试题及答案No.9395.docx

    21. **创建、修改和删除表**:在SQL中,可以使用`CREATE TABLE`创建表,`ALTER TABLE`修改表,`DROP TABLE`删除表。 22. **计算机系统总线**:系统总线是计算机内部各组件间传递信息的公共通道,包括数据总线、地址...

    如何读取Access数据库(*.MDB)的系统表内容

    这些表的内容不应随意修改,因为可能会影响到数据库的正常运行。 在查找系统表的相关信息时,可能需要查阅Microsoft Developer Network (MSDN)文档,虽然它通常不会直接介绍系统表的详细内容,但可以通过搜索和理解...

    PTDD3.5中文版.rar 分区表医生

    PTDD(Partition Table Doctor)正是为了解决这类问题而设计的。 PTDD3.5中文版提供了以下主要功能: 1. **分区表修复**:当分区表出现问题时,如被病毒破坏或人为误操作导致损坏,PTDD可以扫描硬盘,识别并尝试...

    网页设计学习笔记

    - `&lt;table&gt;`用于创建表格,可以设置行、列和单元格。 - `&lt;font&gt;`标签用于控制字体样式,虽然在HTML5中已不推荐使用,但Dreamweaver仍支持它,可以设置字体、大小和颜色。 - `&lt;a&gt;`标签创建超链接,`href`属性定义...

    2021-2022计算机二级等级考试试题及答案No.17017.docx

    12. 窗体样式:BorderStyle=1的窗体在运行时没有最大化和最小化按钮,可以移动但不能改变大小。 13. JavaBeans编写:编写JavaBeans就是编写符合特定规范的Java类,基本的Java编程能力是基础。 14. HTML表单:创建...

    禁止网页图片下载代码

    在互联网时代,许多个人网站或博客拥有者希望保护自己的图片资源不被随意下载或盗用。通过使用特定的代码,可以在一定程度上达到这个目的。本文将详细介绍如何利用HTML与JavaScript实现禁止网页图片下载的功能。 ##...

    NTFS文件系统的底层文件隐藏技术(附实例

    隐藏文件的核心在于操纵NTFS的索引结构,具体而言,是利用$MFT(Master File Table)和$INDEX_ALLOCATION属性。通过以下步骤实现文件隐藏: 1. **创建寄主文件夹**:首先,在根目录下创建一个用于隐藏文件的寄主...

Global site tag (gtag.js) - Google Analytics