如何知道在jQuery中调整元素大小时使用的句柄

时间:2014-04-09 09:00:13

标签: javascript jquery jquery-ui-resizable

对于我的项目,我需要知道用户调整div的边界(' e' w')。那么有可能知道吗?

我知道了:

$(divProjet).resizable({
   handles: "e,w",
   grid: 71,
   maxWidth: 1498,
   minWidth: 69,
   containment: $($(this).parent()[0]).parent()[0],
   start: function () {

   },
   stop: function (event, ui) {
      var numDayModif = (ui.size[0] - ui.originalSize[0]) / 71;
   }
});

1 个答案:

答案 0 :(得分:2)

由于jQuery UI会为每个句柄的可调整大小的<div>插入元素,因此每次调整大小时,您都可以确定哪个元素是目标:

start: function (e) {
    var className = e.originalEvent.target.className.split(" ").pop();
    var side = className.replace("ui-resizable-","",className);
    console.log(side); // e or w
}
  • e.originalEvent.target是&#39;手柄&#39; (DOM元素)
  • 我们获取完整的类名,拆分类,并使用pop()获取最后一个。 (最后一课类似于ui-resizable-e
  • 删除“ui-resizable - &#39;使用replace()从你的字符串中删除你的内容并且你接受了什么(e或w)

注意:如果您选择使用北方和南方手柄,它当然会工作。

JSFiddle