1

是否可以在绝对定位的 div 下的元素上获得悬停事件?绝对定位的 div 是 body 元素的子元素,但 under 不是,因此它们不在父/子关系中。我确实拖放该绝对div,并且我想要突出显示区域,当鼠标位于该区域下方时,用户可以将其放下。

enter code here

http://jsfiddle.net/Rv8kp/

4

1 回答 1

2

简短的回答是否定的,你不能。但是..有一个解决方法

mousemove您可以为整个文档添加事件处理程序。在处理程序中,您检查鼠标位置是否在您需要悬停的元素区域内。

var $pos = $("#pos");
var top = $pos.offset().top;
var left = $pos.offset().left;
var bottom = top + $pos.height();
var right = left + $pos.width();

$(document).mousemove(function (e) {

    if (e.pageY >= top && e.pageY <= bottom && e.pageX >= left && e.pageX <= right)
        $pos.addClass("hover");
    else
        $pos.removeClass("hover");
});

您可以在此处查看完整的工作示例

于 2013-06-09T19:31:59.767 回答