Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/400.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/73.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.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 Can';是否不使用jQuery覆盖jQuery生成的内联样式?_Javascript_Jquery - Fatal编程技术网

Javascript Can';是否不使用jQuery覆盖jQuery生成的内联样式?

Javascript Can';是否不使用jQuery覆盖jQuery生成的内联样式?,javascript,jquery,Javascript,Jquery,我的代码是分叉的,我还将我的代码包含在本文下面的堆栈片段中 我想要实现的是: 当光标不在身体内部时,眼球将随机移动(实现) 当光标进入身体时,眼球跟随光标(完成) 当光标离开身体时,眼球再次开始随机移动(未实现) 我调用了用于在on(“mouseleave”)事件中随机移动眼球的函数,它确实会移动到随机位置,但会立即返回到最后一个光标位置,而不是停留在新位置。有人能给我指出解决问题的正确方向吗 谢谢 var 鼠标移动=错误, 学生=$(“#学生”), 眼球=$(“#虹膜”), eyeposx=

我的代码是分叉的,我还将我的代码包含在本文下面的堆栈片段中

我想要实现的是:

  • 当光标不在身体内部时,眼球将随机移动(实现)

  • 当光标进入身体时,眼球跟随光标(完成)

  • 当光标离开身体时,眼球再次开始随机移动(未实现)

  • 我调用了用于在
    on(“mouseleave”)
    事件中随机移动眼球的函数,它确实会移动到随机位置,但会立即返回到最后一个光标位置,而不是停留在新位置。有人能给我指出解决问题的正确方向吗

    谢谢

    var
    鼠标移动=错误,
    学生=$(“#学生”),
    眼球=$(“#虹膜”),
    eyeposx=40,
    eyeposy=20,
    r=$(瞳孔).width()/2,
    中心={
    x:$(眼球).width()/2-r,
    y:$(眼球).height()/2-r
    },
    距离阈值=$(眼球).width()/2-r,
    mouseX=0,
    mouseY=0;
    $(“body”).ready(函数(){
    如果(!鼠标移动){
    随机移动();
    } 
    });
    $(“body”)。在('mouseleave',function()上{
    鼠标移动=错误;
    随机移动();
    控制台日志(“mouseleave”);
    });
    $(“body”)。在('mousemove',函数(e)上{
    鼠标移动=真;
    控制台日志(“鼠标移动”);
    跟随光标(e);
    });
    函数moveRandom(){
    var loop=setInterval(函数(){
    var xp=Math.floor(Math.random()*80);
    var yp=Math.floor(Math.random()*80);
    动画({左:xp,上:yp});
    }, 3500);
    }
    函数跟随光标(e){
    变量d={
    x:e.pageX-r-eyeposx-center.x,
    y:e.pageY-r-eyeposy-center.y
    };
    变量距离=数学sqrt(d.x*d.x+d.y*d.y);
    if(距离<距离阈值){
    mouseX=e.pageX-eyeposx-r;
    mouseY=e.pageY-eyeposy-r;
    }否则{
    mouseX=d.x/距离*距离阈值+中心.x;
    鼠标=距离y/距离*距离阈值+中心y;
    }
    var xp=0,yp=0;
    var loop=setInterval(函数(){
    //更改1以更改阻尼/动量-越高速度越慢
    xp+=(mouseX-xp)/1;
    yp+=(鼠标-yp)/1;
    css({左:xp,上:yp});
    }, 2);
    }
    正文{
    背景色:#D1D3CF;
    }
    #容器{
    显示:内联;
    高度:400px;
    宽度:400px;
    }
    #眼球{
    背景:径向梯度(100px 100px的圆,#EEEEEE,#000);
    高度:300px;
    宽度:300px;
    边界半径:100%;
    位置:相对位置;
    }
    #虹膜{
    排名前10%;
    左:10%;
    背景:径向梯度(100px 100px,#4DC9EF,#000处的圆圈);
    身高:80%;
    宽度:80%;
    边界半径:100%;
    位置:绝对位置;
    }
    #学生{
    排名前10%;
    左:10%;
    背景:径向梯度(100px 100px处的圆圈,#000000,#000);
    身高:55%;
    宽度:55%;
    边界半径:100%;
    位置:绝对位置;
    }
    @关键帧移动{
    50% {
    转换:转换(-50px,50px);
    }
    }
    @关键帧移动2{
    50% {
    转换:转换(-20px,20px);
    }
    }

    使用Javascript,您只能跟踪光标在网页上的位置。如果将光标移到主体之外,代码就不可能知道光标在哪里


    这就是当您将光标移到窗口外时,跟踪光标的眼睛停止移动的原因。

    问题是,一旦启动followcursor功能,即使在鼠标离开身体后,它仍会继续移回上一个已知的鼠标位置。我刚刚检查了followcursor函数中的mouseOvering变量:

    var
    鼠标移动=错误,
    学生=$(“#学生”),
    眼球=$(“#虹膜”),
    eyeposx=40,
    eyeposy=20,
    r=$(瞳孔).width()/2,
    中心={
    x:$(眼球).width()/2-r,
    y:$(眼球).height()/2-r
    },
    距离阈值=$(眼球).width()/2-r,
    mouseX=0,
    mouseY=0;
    $(“body”).ready(函数(){
    如果(!鼠标移动){
    随机移动();
    } 
    });
    $(“body”)。在('mouseleave',function()上{
    鼠标移动=错误;
    控制台日志(“mouseleave”);
    });
    $(“body”)。在('mousemove',函数(e)上{
    鼠标移动=真;
    控制台日志(“鼠标移动”);
    跟随光标(e);
    });
    函数moveRandom(){
    var loop=setInterval(函数(){
    var xp=Math.floor(Math.random()*80);
    var yp=Math.floor(Math.random()*80);
    如果(!鼠标移动){
    动画({左:xp,上:yp});
    }
    }, 3500);
    }
    函数跟随光标(e){
    变量d={
    x:e.pageX-r-eyeposx-center.x,
    y:e.pageY-r-eyeposy-center.y
    };
    变量距离=数学sqrt(d.x*d.x+d.y*d.y);
    if(距离<距离阈值){
    mouseX=e.pageX-eyeposx-r;
    mouseY=e.pageY-eyeposy-r;
    }否则{
    mouseX=d.x/距离*距离阈值+中心.x;
    鼠标=距离y/距离*距离阈值+中心y;
    }
    var xp=0,yp=0;
    var loop=setInterval(函数(){
    //更改1以更改阻尼/动量-越高速度越慢
    xp+=(mouseX-xp)/1;
    yp+=(鼠标-yp)/1;
    如果(鼠标移动){
    css({左:xp,上:yp});
    }
    }, 2);
    }
    正文{
    背景色:#D1D3CF;
    }
    #容器{
    显示:内联;
    高度:400px;
    宽度:400px;
    }
    #眼球{
    背景:径向梯度(100px 100px的圆,#EEEEEE,#000);
    高度:300px;
    宽度:300px;
    边界半径:100%;
    位置:相对位置;
    }
    #虹膜{
    排名前10%;
    左:10%;
    背景:径向梯度(100px 100px,#4DC9EF,#000处的圆圈);
    身高:80%;
    宽度:80%;
    边界半径:100%;
    位置:绝对位置;
    }
    #学生{
    排名前10%;
    左:10%;
    背景:径向梯度(100px 100px处的圆圈,#000000,#000);
    身高:55%;
    宽度:55%;
    边界半径:100%;
    位置:绝对位置;
    }
    @关键帧移动{
    50% {
    转换:转换(-50px,50px);
    }
    }
    @关键帧移动2{
    50% {
    转换:转换(-20px,20px);
    }
    }
    
    <