Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/75.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 同时拖动多个DIV,无需单击或按住Ctrl键单击_Javascript_Jquery_Css - Fatal编程技术网

Javascript 同时拖动多个DIV,无需单击或按住Ctrl键单击

Javascript 同时拖动多个DIV,无需单击或按住Ctrl键单击,javascript,jquery,css,Javascript,Jquery,Css,我对这个案子很感兴趣 有人能帮我吗? 我想同时拖动多个item/DIV,而不单击/控制要拖动的项。 这意味着,默认情况下,加载页面时,我要拖动的项目已经“选中”。 我想要这样的东西,我在我的本地服务器上试过,但它对我不起作用 $(document).ready(function () { var selectedClass = 'ui-state-highlight'; var $draggableElems = $("#draggable div").draggable({

我对这个案子很感兴趣

有人能帮我吗? 我想同时拖动多个item/DIV,而不单击/控制要拖动的项。 这意味着,默认情况下,加载页面时,我要拖动的项目已经“选中”。 我想要这样的东西,我在我的本地服务器上试过,但它对我不起作用

$(document).ready(function () {
    var selectedClass = 'ui-state-highlight';

    var $draggableElems = $("#draggable div").draggable({
        start: function (e, ui) {
            if (e.target.id == "start") $draggableElems.addClass(selectedClass);
            else return false;
        },
        stop: function (e, ui) {
            // reset group positions
            $('.' + selectedClass).css({
                top: 0,
                left: 0
            });
        },
        drag: function (e, ui) {
            if (e.target.id == "start") {
                // this works because the position is relative to the starting position
                $('.' + selectedClass).css({
                    top: ui.position.top,
                    left: ui.position.left
                });
            }
        }
    });

    $("#droppable").droppable({
        drop: function (e, ui) {
            var $selectedElems = $('.' + selectedClass).remove().clone();
            $selectedElems.appendTo($(this)).add(ui.draggable) // ui.draggable is appended by the script, so add it after
            .removeClass(selectedClass).css({
                top: 0,
                left: 0
            });
        }
    });
});
如果有人能帮助我,我将不胜感激


非常感谢

您忘记了jQuery UI库,在JSFIDLE上,您只需要选中显示jQuery UI 1.8.18的复选框

<script type="text/javascript" src"js/jquery_ui_1.8.18"></script>


那么问题出在哪里?JSFIDLE示例在包含了jQuery UI库之后运行良好。艾利。我是jquery drag的初学者。问题是此代码将使用哪个jquery版本。我把它添加到我的顶层代码中。但是它不起作用。在jQuery之后,您还需要包含jQuery UI库,您需要可拖放的插件来启用拖放功能。检查官方网站的尝试搜索更多信息。tks的信息,它的工作现在。但我需要定制这些如何使其仅在水平模式下拖动。忘了Dropable吧。我想修改位置,我的意思是框1,框2,框3是分开的,当我想拖动的时候,位置仍然是分开的,我的意思是,像这样。但问题是,当我拖动所有3个框时,位置发生了变化。我希望所有的框都会跟随它第一次加载时的位置。你的意思是它在JSFIDLE上对相同的代码工作良好,但在你的服务器上不工作?您在控制台中看到任何错误吗?