拖放限制为jQuery plus plus中的parent

时间:2013-09-13 14:51:28

标签: jquery jquery++

以下是我使用jQuery ++实现拖放的代码。

<div id="parent">
  <div id="left">
     <div class="ab">1</div>
     <div class="ab">2</div>
     <div class="ab">3</div>
     <div class="ab">4</div>
     <div class="ab">5</div>
  </div>
  <div id="right"></div>
</div>


$('.ab').on({
  'draginit': function (ev, drag) {
    drag.ghost();
  }
});

$('#right').on({
 "dropover": function (ev, drop, drag) {
    $(this).addClass('highlight');
 },
    "dropout": function (ev, drop, drag) {
    $(this).removeClass('highlight');
 },
    'dropon': function (ev, drop, drag) {
    $(this).append(drag.element.clone(true, true));
    $(this).removeClass('highlight');
 }
});

但是当我向右拖动回到原点后,问题就出现了。它正在添加滚动条并在容器内拖动。我该如何解决这个问题?

小提琴: http://jsfiddle.net/cjcg4/7/

1 个答案:

答案 0 :(得分:1)

我不熟悉jQuery ++,但我看了你的小提琴。

您似乎没有将dropoverdropoutdropon事件绑定到您的#left div,如果您希望它与#right类似,则需要这样做。

对于滚动,只需从#right div中删除overflow:scroll属性。

这是一个新的小提琴:http://jsfiddle.net/mnoble01/cjcg4/8/

发生了什么变化:

  1. 使用选择器$('#right,#left')绑定上述三个事件。
  2. 从#right div
  3. 中删除overflow:scroll css属性
相关问题