简单的逻辑条件问题,关于左右两边触发判断条件的问题

就是一个单纯的逻辑判断问题,小demo两边鼠标移入判断有问题
因为实在不知道如何设置第二个判断条件,所以才来此提问。下面给出示例代码,
[示例代码][https://jsfiddle.net/bpn1h5wk/1/]

**说明图片:**

clipboard.png
clipboard.png
clipboard.png
clipboard.png

目前的问题就是,只能从一边移入,因为判断条件冲突了,具体可以看jsfiddle上的示例代码.

阅读 2.9k
3 个回答
ct.addEventListener('mousemove',function(e){
           let ex = e.offsetX,
               ey = e.offsetY;
           if(ey > line.y && ey < (line.y + line.long)){  // 只允许在直线的高度内执行
              let moveY = ey - (line.y  + line.long/2); // y从(long/2) 中心点开始偏移计算
              let moveX = 0;  // x 随着鼠标的移入位置 而改变

              moveX = (ex-line.x)
              
              //其实更本不用判断

              line.moveX = moveX;
              line.moveY = moveY;
           }

       })

https://jsfiddle.net/papersna...

看了一下你的代码,并不需要判断

这里

if(ex < (line.x)){ //重点就是这个判断条件 , 左右两边不知道如何设置 触发的判断条件
    moveX = ex - line.x; // 相对 原始x 的位置 偏移
}

直接写成 moveX = ex - line.x; 就可以了

test

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题