我想在用户悬停某个元素时启动一个动作,但前提是鼠标来自该元素下方。即悬停检查光标的方向,并仅在方向为“向上”时触发函数(光标从下方进入元素)。
有一篇关于 jQuery hover with mouse direction 的类似帖子,但我假设如果我只需要“向上”和“向下”而不是使用鼠标位置来确定每个可能的角度,那么必须有一个更简单的解决方案。
一个简单的解决方案是:
var mY = 0;
var over = 0;
var direction = '';
$(document).ready(function(){
$('body').mousemove(function(e){
if (over == 0) mY = e.pageY;
});
$('.my_element').bind('mouseover mousemove', function(e){
over = 1;
if (e.pageY < mY){
direction = 'From Bottom';
}else{
direction = 'From Top';
}
});
$('.my_element').bind('mouseout', function(){
over = 0;
});
});
这只是一个快速的,希望它对你有用......