为可拖动的div制作div溢出

时间:2014-09-02 05:10:48

标签: javascript jquery css jquery-ui

在按钮单击事件上,我可以使用jquery ui生成可拖动的div。我能够在容器div class=” middle-side”中拖动新创建的div。现在,可拖动的div被固定以保持在设置到容器的空间内。我想给它更多的拖动空间,但保持容器的初始高度和宽度边界。我怎么能这样:如果我一直拖动div到右边使容器div滚动。 JSFIDDLE

Jquery的

var z = 1;
$('#button').click(function (e) {
    /** Make div draggable **/
    $('<div />', {
        class: 'draggable ui-widget-content',
        html: '<span class="close">[X]</span><span class="text">' + $('textarea').val() + '</span>',
        appendTo: '.middle-side',
        draggable: {
            containment: 'parent',
            start: function( event, ui ) {
                $(this).css('z-index', ++z);
            }
        }
    }).addClass('placement');
});

CSS

.middle-side {
    width: 500px;
    height: 500px;
    border: 2px solid;
}
.draggable {
    width: 150px;
    height: 150px;
    padding: 0.5em;
    background:#FFFFDD;
    position: relative;
    z-index: 1;
}

.placement {
    border: 2px dashed #000;
}

HTML

<textarea rows="4" cols="50" placeholder="Enter Text Here!"></textarea>
<br/>
<input type="button" id="button" value="Add Div with Text" />
<br/>
<div>
    <div class="middle-side empty"></div>

</div>

1 个答案:

答案 0 :(得分:1)

这是预期的行为:

http://jsfiddle.net/0wbnud4k/49/

我放置了一个中间较大的div并让你的容器滚动。

<div class="middle-side">
    <div class="droppable"></div>
</div>

此外,所有内容都附加到内部div以及对象的绝对位置和相对于内部div的位置。

.middle-side {
    width: 500px;
    height: 500px;
    border: 2px solid;
    overflow: scroll;
}

.droppable {
    width: 2000px;
    height: 2000px;
    position: relative;
}

.draggable {
    width: 150px;
    height: 150px;
    padding: 0.5em;
    background:#FFFFDD;
    position: absolute;
    z-index: 1;
}

.placement {
    border: 2px dashed #000;
}