如何知道拖动元素在哪个元素之上?
Posted
技术标签:
【中文标题】如何知道拖动元素在哪个元素之上?【英文标题】:How to know the dragging element is over which element? 【发布时间】:2011-05-13 17:40:41 【问题描述】:我对 jQuery Drag&Drop 有疑问。我有一个可拖动的元素和很多 dropTarget,所以我只想知道当我拖动时,我的拖动元素在哪个元素上方?
顺便说一句,Firefox 提供 event.originalTarget 指向一个 DOM 元素,但它等于 Google Chrome 中的“未定义”。
有什么建议吗?
谢谢。
【问题讨论】:
【参考方案1】:查看您的 droppable 上的 over
事件。
$('#droppableid').droppable(
over: function(event, ui)
log('You are over item with id ' + this.id);
);
例如here。
【讨论】:
我应该知道元素的拖放细节。当用户拖动时,我想在 dropable 之前或之后附加一个创建的元素。顺便说一句,在这种情况下,我总是使用 dropable 词,但“可放置”元素不是 jQuery 可放置的。它们只是跨度元素。 这会告诉你什么时候over 可放置的东西 - 即它被拖动的时候 - 而不是它被放置的时候。没有关于可拖动的信息告诉你它已经结束了,也没有关于普通 span 元素的任何信息 - 所以我建议让你的 span 元素“可放置”并使用上面的over
方法。要在元素之前或之后追加,可以使用 before
和/或 after
jquery 方法。 api.jquery.com/before以上是关于如何知道拖动元素在哪个元素之上?的主要内容,如果未能解决你的问题,请参考以下文章