如何使用jQuery UI可选择将div绘制到特定位置?

时间:2014-02-28 17:43:06

标签: jquery jquery-ui

我想使用jQuery UI的selectable

将div绘制到特定位置

我已经尝试过,我认为它几乎已经弄明白了: http://jsfiddle.net/62LJG/

我想到的步骤是:

  1. 获取Selectable的帮助者lefttop
  2. 获取Selectable的帮助者widthheight
  3. 在我的目标上添加div,我可以使用这些lefttopwidthheight我必须使用CSS这个div。
  4. 现在我的问题是我无法从这个小部件中获得宽度和高度。

    我认为所有的jQuery UI都很相似所以我试过这个:

    $('#tar').selectable({
      stop: function(event, ui) {
        console.log(ui.size.width + ',' + ui.size.height);
      }
    });
    

    但此部分ui.size不起作用。

    但我可以在jQuery ui.sizeresizable中使用draggable来获取宽度和高度。

    如何从jQuery width的助手(虚线)中获取heightselectable来实现我的目标?

2 个答案:

答案 0 :(得分:0)

ui对象似乎是空的,请使用:

$(function() {
    $('#tar').selectable({
      stop: function(event, ui) {
        console.log($(this).width() + ',' + $(this).height());
      }
    });
});

如果元素中有填充/边距,请使用$(this).outerWidth()和$(this).outerHeight()。

答案 1 :(得分:0)

最后我弄清楚了。

event.page - position()将获得相对值。

演示:http://jsfiddle.net/62LJG/1/

参考:Using jQuery how to get click coordinates on the target element