Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何根据光标的来源对元素执行操作_Javascript_Jquery_Css - Fatal编程技术网

Javascript 如何根据光标的来源对元素执行操作

Javascript 如何根据光标的来源对元素执行操作,javascript,jquery,css,Javascript,Jquery,Css,我希望问题足够清楚,我想根据鼠标悬停该元素时光标的来源对元素执行“操作”。例如,如果光标来自左侧,则使元素向右滑动;如果光标来自右侧,则使元素向左滑动;如果光标来自底部,则使元素向上滑动;如果光标来自顶部,则使元素向下滑动。我试着自己去做,结果不太顺利,所以别指望我能展示我自己的东西,对不起。但我给你们举个例子: 因此,请告诉我一种使用jQuery和/或CSS3的方法,使用jQuery mouseenter事件 当前显示的代码根据鼠标指针位置执行不同的动画,然后计算偏移量。因此,您可以尝试计算鼠

我希望问题足够清楚,我想根据鼠标悬停该元素时光标的来源对元素执行“操作”。例如,如果光标来自左侧,则使元素向右滑动;如果光标来自右侧,则使元素向左滑动;如果光标来自底部,则使元素向上滑动;如果光标来自顶部,则使元素向下滑动。我试着自己去做,结果不太顺利,所以别指望我能展示我自己的东西,对不起。但我给你们举个例子:


因此,请告诉我一种使用jQuery和/或CSS3的方法,使用jQuery mouseenter事件

当前显示的代码根据鼠标指针位置执行不同的动画,然后计算偏移量。因此,您可以尝试计算鼠标指针的位置,然后确定光标的来源

然后,您可以决定无论如何为图片设置动画


这里的助手函数应该是mouseenter、offset和animate。如果您需要更多帮助,请告诉我。

您可以在鼠标进入挡块时获得鼠标移动方向。看看这个例子

获取鼠标方向的函数取决于JSFIDLE代码顶部的变量,如下所示:

function getMoveDir(){
    var direction = '';
    if ((disX <= 0) && (disY <= 0)){
        if (disX < disY) {
            direction = 'From right';
        } else {
            direction = 'From top';
        }
    }
    if ((disX >= 0) && (disY >= 0)) {
        if (disY > disX) {
            direction = 'from bottom';
        } else {
            direction = 'from left'
        }
    }
    return direction;
}
函数getMoveDir(){ var方向=“”; 如果((disX=0)){ 如果(disY>disX){ 方向='从底部'; }否则{ 方向='从左' } } 返回方向; }
哇,太棒了!正是我需要的。谢谢。我的建议不够有建设性,但我基本上明白了。无论如何,谢谢你。