Я делаю действие перетаскивания, и я хочу, чтобы элемент сместился вниз, когда я приношу элемент по тому, который находится в моем пути.
простой хакер мог бы сказать что-то вроде:
var hoverElem = null;
$('*').hover(function() {hoverElem = this});
тогда, когда вам нужно вызвать любую функцию, чтобы получить значение, просто используйте hoverElem
EDIT: это менее ресурсоемкий вызов:
$('*').live('mouseenter', function() { hoverEleme = this; });
EDIT 2: из-за того, что .live () устарел, вы должны использовать .on ()
$("*").on("mouseenter", function() { hoverElem = this; });
Я не знаю, есть ли стандартный способ, но я бы, вероятно, привязал событие «наведения курсора» ко всем элементам, которые вы, возможно, захотите переместить вниз, если вы над ними, а затем протестируете чтобы узнать, перетаскиваете ли вы объект в данный момент.
Опять же, я точно не знаю ваших настроек, но у вас может быть глобальная переменная var currentDragging = false
, тогда, когда вы начнете перетаскивать, установите для нее значение true
. Затем, когда вы наводите указатель мыши на элемент, который хотите переместить, вы можете проверить, истинна ли ваша переменная currentyDragging
, и если это так, то вы можете переместить ее.
Немного сложно, но я не могу придумать другого способа сделать это из головы. :)