我在<div class="items"上使用可拖动的元素

<div class="item">
    <div class="thumb">
        <img id="image" src="source.png" />
    </div>
    <div class="description">
        <p>Some description here</p>
    </div>
</div>


现在在droppable上,我只想保留该div的图像。我已经尝试使用以下代码,但似乎无法正常工作...

$("#dropbar").droppable({
    accept: ".deal-itinerary-item .row",
    hoverClass: correct_placeholder,
    activeClass: active_placeholder,
    revert: false,
    tolerance: "pointer",

    drop: function (event, ui) {
        var dragging = ui.draggable.clone().find("img").remove();
        $(this).append(dragging).addClass("dropped");
    }
});


认为这会找到img并从可拖动对象中删除其他任何内容。

我在做什么错,我该如何解决?

谢谢!

最佳答案

您将在示例中删除img,因为它是调用remove()时jQuery对象选择的内容。

 var image = ui.draggable.find("img").clone();
 $(this).append(image).addClass("dropped");


我不确定您要删除的内容是原始的可拖动内容,还是只是克隆了太多东西。但是,如果要删除原始的可拖动对象,请执行以下操作:

 var image = ui.draggable.find("img").clone();
 $(this).append(image).addClass("dropped");
 ui.draggable.remove();


可能有效。

关于javascript - 几个div,如何查找图片并删除父div,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31559283/

10-09 18:05
查看更多