1

我正在尝试克隆图像并将其放置在可放置区域中,然后继续将该图像放置到该可放置区域中,从而创建该图像的许多克隆。似乎可以使用带有 helper: 'clone' & placeholder: 'keep' 的angular-dragdrop库,但我无法做到这一点,这可能很愚蠢......

在这里有一个 plunker:http://plnkr.co/edit/yWcqgwefVD9Kf3Fpj4uI?p= preview

<div class="container" ng-show="vm.containerWidth !== '' && vm.containerHeight !== ''">
  <div class="row">
    <div class="col-md-9">
      <div style="border:solid #e3e3e3 1px; width:800px; height:{{vm.containerHeight + 40}}px; display: table-cell; vertical-align: middle;">
        <div ng-model="something" data-drop="true" data-jqyoui-options style="border:dashed #000000 1px; width:{{vm.containerWidth}}px; height:{{vm.containerHeight}}px; margin: 0 auto;" jqyoui-droppable="{onDrop: 'vm.drop'}"></div>
      </div>
    </div>
    <br /><br />
    <div class="col-md-3">
      This is a text button, try dragging to dotted box it wont copy:
      <div data-drag="true" jqyoui-draggable="{animate: false, placeholder: 'keep'}" data-jqyoui-options="{revert: 'invalid', helper: 'clone', opacity: 0.35}">
        <div class="btn btn-primary">Just a button here!</div>
      </div>
      <br /><br />
      This is an image, try dragging to dotted box it wont copy:<br />
      <img src="http://nilsagorgroup.com/nil_feed/wp-content/uploads/2013/02/Services-Packages-50x50-50x50.png" data-drag="true" jqyoui-draggable="{animate: false, placeholder: 'keep'}" data-jqyoui-options="{revert: 'invalid', helper: 'clone', opacity: 0.35}" />
    </div>
  </div>
</div>

该示例显示了一个按钮和一个图像,它们都是可拖动的。尝试将它们拖到虚线容器中,您会看到它们不会复制到该可放置区域。虽然,如果你在 onDrop 函数上放置一个断点,你会看到它被调用。

另外,我尝试将助手设置为“原始”并允许它复制,但当然图像会消失(移动)到虚线区域但我认为这很奇怪的是看着 dom 你会注意到它在技术上没有'不要移动,因为这个购物车示例显示商品正在移动。

http://codef0rmer.github.io/angular-dragdrop/#/cart

任何援助将不胜感激。

4

1 回答 1

0

为了交换工作,您需要同时设置ng-model可拖动和可放置

vm.list1 = {'title': 'Just a button here!', drag: true};
vm.something = [];

我只修复了按钮:http: //plnkr.co/edit/oGD1My

于 2015-05-19T18:02:49.253 回答