Jquery 查找丢弃的元素

Jquery 查找丢弃的元素,jquery,drag-and-drop,Jquery,Drag And Drop,我正在做一个棋盘,并且试图找到棋子落在的桌子元素。不幸的是,丢弃事件似乎根本没有启动 这就是我到目前为止所知道的,有人能告诉我为什么下降事件没有触发吗 这与div有关,它需要一个高度 或者移除div并使用td上的ID和class,这与div有关,它需要一个高度 或者删除div并使用td上的ID和class您的可拖放元素具有ID=“pieces”,而不是class=“pieces” 尝试在您的可拖放元素上使用#board或#pieces您的可拖放元素具有id=“pieces”,而不是class=

我正在做一个棋盘,并且试图找到棋子落在的桌子元素。不幸的是,丢弃事件似乎根本没有启动


这就是我到目前为止所知道的,有人能告诉我为什么下降事件没有触发吗

这与div有关,它需要一个高度
或者移除div并使用td上的ID和class,这与div有关,它需要一个高度
或者删除div并使用td上的ID和class

您的可拖放元素具有ID=“pieces”,而不是class=“pieces”


尝试在您的可拖放元素上使用#board或#pieces

您的可拖放元素具有id=“pieces”,而不是class=“pieces”

$(document).ready(function(){
    $('.piece').draggable();
    $('.field').droppable({
        drop: function(){
            alert($(this).attr('id'));
        }
    });
});
尝试在您的可拖放元素上使用#board或#pieces

$(document).ready(function(){
    $('.piece').draggable();
    $('.field').droppable({
        drop: function(){
            alert($(this).attr('id'));
        }
    });
});
并将此添加到css中:

.field {
    height:100%;
}

并将此添加到css中:

.field {
    height:100%;
}

请参见

棋盘格中的div元素高度为零。因此,当你落在方块上时,你击中的是td元素,而不是微小的div

尝试添加CSS

.tile {
    height: 100%;
}
并将类平铺添加到您的div中,使其成为

<td><div id="0" class="field"></div class="tile"></td>

您所犯的错误是假设div元素将填充其父元素。你在那方面有很好的伙伴。关于调试div,我读到的一个最重要的技巧是将背景颜色应用于div,这样您就可以得到视觉反馈,表明它的行为符合您的预期,这是非常值得的。

棋盘格中的div元素高度为零。因此,当你落在方块上时,你击中的是td元素,而不是微小的div

尝试添加CSS

.tile {
    height: 100%;
}
并将类平铺添加到您的div中,使其成为

<td><div id="0" class="field"></div class="tile"></td>

您所犯的错误是假设div元素将填充其父元素。你在那方面有很好的伙伴。关于调试div,我读到的一个最重要的技巧是将背景颜色应用于div,这样您就可以得到视觉反馈,它的行为符合您的预期,这是非常值得的。

我修复了第一个错误,使用字段作为下拉框。droppables是被丢弃的还是被丢弃的?我修复了第一个错误,使用字段作为droppables。droppable是被丢弃的还是被丢弃的?我将droppable设置为
.field
,但事件根本没有触发。我将droppable设置为
.field
,但事件根本没有触发。只需将field设置为
高度:100%
即可。谢谢太好了-我对你的类名有点不清楚,因为你在问题中提到了“片段”作为可拖放项,但在小提琴中使用了“字段”,所以我回避并告诉你使用一个新的名称来引导你克服潜在的问题。不管怎样-你修复的每一个bug都会让你变得更强。只要将字段设置为
height:100%
就行了。谢谢太好了-我对你的类名有点不清楚,因为你在问题中提到了“片段”作为可拖放项,但在小提琴中使用了“字段”,所以我回避并告诉你使用一个新的名称来引导你克服潜在的问题。不管怎样,你修复的每一个bug都会让你变得更强。