在表格刷新10秒后在调整大小列上设置宽度?

时间:2018-11-15 09:10:53

标签: javascript jquery html css

我的问题是我的页面会在10秒后刷新,并且我在页面上添加了调整大小列功能。

但是在页面刷新10秒后。桌子回到原来的位置。

主要问题是我想如何在调整大小th之后获取特定th的宽度并将其应用于th。

什么是jquery事件,用于在调整大小时获得宽度,什么是将宽度应用于方法的方法?这样用户可以在刷新表后看到宽度大小。

div {
  resize: horizontal;
  overflow: auto;
  ;
}

td {
  text-align: center;
}
<div id="banner-message">
  <table cellpadding="0" cellspacing="0" border="0">
    <thead>
      <tr>
        <th>
          <div>One</div>
        </th>
        <th>
          <div>Two</div>
        </th>
      </tr>
    </thead>
    <tbody>
      <tr>
        <td>ab</td>
        <td>cd</td>
      </tr>
    </tbody>
  </table>

</div>

2 个答案:

答案 0 :(得分:0)

您的主要问题是不知道用户设置的宽度。通过刷新或最初输入页面进入页面时,会陷入默认值。

保存这些值的一种方法是将其保存到add url parameters。然后从网址中get these values确定要设置的宽度。另一种方法是利用localStoragesessionStorage。缺点是不能通过传递URL来共享设置的宽度。 detect that they have changed之后更新值。

答案 1 :(得分:0)

我得到了答案

在th中添加了div元素

<th><div>#</div></th>

1。调整列大小

$("#thead_DispatchTrip th").resizable({
        handles: "e",
        resize: function (event, ui) {
            $(ui.element).find('div').width(ui.size.width);
        }
    });

2。获取宽度

tableWidth = [];
    $("#thead_DispatchTrip th").each(function () {
        tableWidth.push($(this).find('div').width());
    });

3。 10秒后设置宽度

$("#thead_DispatchTrip th").each(function (i,el) {
    $(this).find('div').width(tableWidth[i]);
});