微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

jQuery draggable和appendTo不起作用

我使用jQuery ui draggable但选项appendTo不起作用.但是其他选项如遏制或网格正常工作.这是代码

HTML

<div id="demo">
</div>
<div id="sidebar">
    <div class="item">
    </div>
    <div class="item">
    </div>
    <div class="item">
    </div>
    <div class="item">
    </div> 
</div>

脚本

jQuery(".item").draggable({ appendTo: "#demo",grid: [ 10,10 ],containment: "#demo" });

CSS

#demo {
    width: 500px;
    height: 500px;
    border: 1px solid black;
    float: left;
}
#draggable {
    background: red;
    width: 50px;
    height: 50px;
}
#sidebar {
    float: left;
    width: 300px;
}
.item {
    cursor: pointer;
    background: black;
    width: 100px;
    height: 100px;
    margin: 10px;
}

这是一个现场演示:http://jsfiddle.net/fzjev/

解决方法

这是一个关于这个问题的公开错误Draggable: appendTo option doesn’t work together with helper: ‘original’.

建议的解决方法是使用帮助程序:’clone’并在拖动开始/停止时隐藏/显示原始文件.

例如

$('.draggyThing').draggable({
        appendTo: '.dropArea',helper: 'clone',start: function (event,ui) {
            $(this).hide();
        },stop: function (event,ui) {
            $(this).show();
        }
    });

然后,您可能希望手动将可拖动元素附加到droppable元素的drop.

$('.dropArea').droppable({
        accept: '.draggyThing',drop: function (event,ui) {
            $('.dropArea').append(ui.draggable);
        }
    });

原文地址:https://www.jb51.cc/jquery/177440.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐