调整大表中的表列大小

时间:2014-05-14 12:38:01

标签: javascript jquery jquery-ui

我正在寻找一种简单的方法来使我的表列重新调整大小。 由于我的表有很多列,因此页面必须有一个滚动条。这似乎使调整大小的所有代码都无法正常工作。我已经尝试了自己的代码和几个插件,但它永远不会有效。

带插件的

jsfiddle

jsfiddle没有插件但仍无效

我正在使用我在此处找到的代码:

$(function() {
    var pressed = false;
    var start = undefined;
    var startX, startWidth;

    $("table th").mousedown(function(e) {
        start = $(this);
        pressed = true;
        startX = e.pageX;
        startWidth = $(this).width();
        $(start).addClass("resizing");
        $(start).addClass("noSelect");
    });

    $(document).mousemove(function(e) {
        if(pressed) {
            $(start).width(startWidth+(e.pageX-startX));
        }
    });

    $(document).mouseup(function() {
        if(pressed) {
            $(start).removeClass("resizing");
            $(start).removeClass("noSelect");
            pressed = false;
        }
    });
});

1 个答案:

答案 0 :(得分:0)

你的问题是桌子的宽度。

尝试将width:200%;设置为表格。如果您愿意,可以设置overflow:scroll;

小提琴已更新http://jsfiddle.net/Mz2HN/

我只编辑了css

table {
    border-width: 1px;
    border-style: solid;
    border-color: black;
    border-collapse: collapse;
    width:200%;
    overflow:scroll;
}

table td {
    border-width: 1px;
    border-style: solid;
    border-color: black;
}

table th {
    border: 1px;
    border-style: solid;
    border-color: black;
    background-color: green;
    cursor: col-resize;
}

table th.resizing {
    cursor: col-resize;
}

.noSelect {
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}