jquery - 我如何使用 jQuery 一次拖动多个对象?

标签 jquery css

我试图同时拖动多个选定的对象。我评论了this链接以帮助我完成此操作。 我无法获得拖动多个选定对象的全部功能。 具体来说,当选择了多个对象时,我似乎无法确定被拖动的元素的坐标。这些元素始终具有 0,0 坐标。 这是我的 fiddle

有人可以检查我的代码并让我知道我错过了什么吗?

$(document).ready(function() {
$('#textbox, #textbox1').draggable(draggableOptions);
});


    var selectedObjs;
    var draggableOptions = {
    start: function (event, ui) {
        //get all selected...
        selectedObjs = $('div.selected').filter('[id!=' + $(this).attr('id') + ']');

    },
    drag: function (event, ui) {
        var currentLoc = $(this).position();
        var orig = $(this).data('orig');

        if (!orig) {
            orig = ui.originalPosition;
        }

        var offsetLeft = currentLoc.left - orig.left;
        var offsetTop = currentLoc.top - orig.top;

        moveSelected(offsetLeft, offsetTop, selectedObjs);
        $(this).data('orig', currentLoc);
    }
   };


   function moveSelected(ol, ot, selectedObjs) {
    console.log(selectedObjs.length);
    selectedObjs.each(function () {
        $this = $(this);
        var pos = $this.position();

        var l = $this.context.clientLeft;
        var t = $this.context.clientTop;

        $this.css('left', l + ol);
        $this.css('top', t + ot);
    });
    }

最佳答案

我发现了问题,我不得不更改左侧和顶部的计算 请看下面的代码,

 var pos = $this.position();

 var l = pos.left;
 var t = pos.top;

关于jquery - 我如何使用 jQuery 一次拖动多个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29149039/

相关文章:

jquery - CSS 剪辑属性 - 是否有裁剪图像的替代方法?

CSS:在 Firefox、IE 中替换 -webkit-line-clamp

javascript - map 初始化后更改 Google Maps API 标记标签的颜色

html - 为什么 CSS3 动画不起作用?

php - 表单自动填充字段填充不正确

jquery - 更改 "scroll to anchor"偏移量 - jquery

javascript - 用循环将对象项配对在一起

javascript - 仅当站点位于本地主机时、仅当启用 JavaScript 时、仅在 IE8 模式下,IE8 才会在重新加载时崩溃

html - Iphone 上的图像比我指定的大 2 倍

html - 不能在 div 中设置样式元素?