jQuery UI可拖动快照还原不起作用

巴克曼01

我正在为我正在使用该窗口管理器的项目构建一个窗口管理器的过程中,它使用jQuery UI Draggable和Resizable,并且在大多数情况下我都在使用它。

我似乎遇到的问题是我需要实现的功能是Windows 7/8窗口捕捉到顶部,左侧或右侧。现在我已经可以使用快照了,但是当用户拖动窗口时,我希望它恢复到原来的大小,但是位置必须居中到鼠标指针的位置,由于某种原因,jQuery UI似乎正在将位置恢复到拖动起点位置,一旦我重新调整大小。

演示 http://jsfiddle.net/t5zqcdtm/1/

测试方法是,如果您抓住两个打开的窗口之一并将其拖动,使鼠标位于3px顶部,您将看到一个完整尺寸的轮廓,然后放开,该窗口将变为完整尺寸,然后将鼠标向右移到左标题栏右侧的控制按钮,因此只需在“ _”的左侧拖动窗口,您将看到窗口位置未居中于鼠标

有问题的代码在第108行:

var mode = $(ui.helper).data("mode");
var oldStyle = JSON.parse($(ui.helper).data("origin"));
newStyle = clone(oldStyle);
newStyle.left = e.pageX - (
parseInt(oldStyle.width.substring(0, oldStyle.width.length - 2)) / 2) + "px";
newStyle.top = e.clientY + "px";
console.log({
    old: oldStyle,
    new: newStyle
});
$(ui.helper).css(newStyle);
$(ui.helper).data("mode", "");

谁能告诉我为什么窗口然后跳到左上方

朱利安·格雷戈尔(Juliengrégoire)

draggable开始时,将进行一个计算,其中包含click的生成位置position以及width元素这里的问题似乎是click位置是resize在元素之前计算的,因此,drag然后使用该click位置计算

您可以在中访问此click职位,instance并根据需要对其进行修改。例如,您可以确定s是否click在窗口的新宽度之外,如果是,则相应地重新放置。像这样:

start: function (e, ui) {
                    ...
    //At the end of your start function
    //you check the actual position of the click
    var clickLeft = $(this).draggable('instance').offset.click.left;
    //If this click is out of the window, or in the top right icons
    if (clickLeft > ($(ui.helper).width() - 50)) {
        //You set the click left to wherever you need
        $(this).draggable('instance').offset.click.left = $(ui.helper).width() - 50;
   }

}

http://jsfiddle.net/u95ba45k/1/

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

jQuery UI可拖动事件不起作用

来自分类Dev

jQuery UI的可拖动性和可缩放性不起作用

来自分类Dev

jQuery UI可排序不起作用

来自分类Dev

jQuery可拖动和滚动不起作用:移动设备

来自分类Dev

jQuery可拖动和滚动不起作用:移动设备

来自分类Dev

jQuery UI可排序删除项不起作用

来自分类Dev

具有可排序UI的jQuery拖放不起作用

来自分类Dev

jQuery可拖动事件在IE9中不起作用

来自分类Dev

jQuery可拖动并延迟还原

来自分类Dev

使用Jquery UI拖放多个选定的可拖动对象并还原无效的可拖动对象

来自分类Dev

jQuery ui resizable()不起作用

来自分类Dev

jQuery UI可编辑不起作用

来自分类Dev

DatePicker jQuery UI不起作用

来自分类Dev

按钮jQuery UI不起作用

来自分类Dev

jQuery-UI DateTimePicker不起作用

来自分类Dev

jQuery UI映射搜索不起作用

来自分类Dev

jQuery UI盲效果不起作用

来自分类Dev

jQuery UI可排序的“取消”选项在FF中不起作用

来自分类Dev

为什么jQuery UI可排序对AngularJS templateURL不起作用?

来自分类Dev

附加新元素后,jQuery UI 可排序刷新不起作用

来自分类Dev

可拖动不起作用

来自分类Dev

jQuery可排序标签单击事件不起作用

来自分类Dev

jQuery .click()在新的可排序项目中不起作用

来自分类Dev

使用jQuery可拖动UI使项目可拖动

来自分类Dev

当拖放到Jquery ui中的droppable div中时,为什么可拖动元素的克隆正在还原?

来自分类Dev

jQuery可拖动获取放置位置,而不是还原位置

来自分类Dev

jQuery可拖动获取放置位置,而不是还原位置

来自分类Dev

jQuery UI在WordPress插件中不起作用

来自分类Dev

jQuery-ui Draggable在appendchild()之后不起作用

Related 相关文章

热门标签

归档