我想用 juery 拖放项目。
现在我确实有一个包含多个项目的“存储”。
在另一个站点上,我有 x 个盒子。每个盒子只能包含 1 个项目。
现在,我使用 droppable 函数在盒子上设置另一个类,只能添加 1 个盒子,它在:
$( ".droppable" ).droppable({
accept: ".draggable",
activeClass: "draghover",
drop: function( event, ui ) {
if($( this ).hasClass("droppable")) {
$( this ).removeClass("droppable").addClass( "droppable-");
}
} });
Run Code Online (Sandbox Code Playgroud)
现在,当我将项目移回存储或另一个盒子时,我需要恢复类。我用 draggable.start 函数试过这个,但我不能得到正确的 parent()
$( ".draggable" ).draggable({
revert: "invalid",
snap: ".droppable",
snapMode: "inner",
start: function( event, ui ) {
alert($( this ).parent().attr("Class"));
}
});
Run Code Online (Sandbox Code Playgroud)
这将始终返回第一次拖动之前的起始位置。不是最新的位置。
存储看起来像:
<td valign="top" class="warenlager" bgcolor="grey" width="200">
<div class="draggable" class="bild ui-widget-content" id="s73-1">S</div>
<div class="draggable" class="bild ui-widget-content" id="s74-1">S</div>
</td> …Run Code Online (Sandbox Code Playgroud)