鼠标当前x轴 减去 鼠标在控制元素上x轴的偏移 这样为什么就是控制元素的Left了?这到底是怎么算的啊?求大神解决

来源:2-6 编程练习

爪哇一只猫

2016-11-26 21:15

鼠标当前x轴 减去 鼠标在控制元素上x轴的偏移 这样为什么就是控制元素的Left了?这到底是怎么算的啊?求大神解决 

写回答 关注

2回答

  • qq_俺忘了_0
    2016-12-08 18:20:20
    已采纳

    我帮你画了个图 你看,只要明白这个原理,就是剩下函数的不同写法罢了

    http://img.mukewang.com/584933c80001912608190460.jpg


    爪哇一只猫

    明白啦 真是太感谢你了 讲的真详细!

    2016-12-12 17:25:38

    共 1 条回复 >

  • qq_俺忘了_0
    2016-12-08 18:25:18

    本来画了2张 结果第一张没保存住 算了 合在一起了  原理就是那样

    鼠标点击要干的事:disX = e.clientX - box.offsetLeft; 

                                   disY = e.clentY - box.offsetTop;  

                                    记录图2黄色部分的那个偏移量

    鼠标移动要干的事: box.style.lft = e.clientX - disX + 'px';    

                                 box.style.top = e.clientY - box.offsetTop;  

                                让鼠标当前的位置 减去那个第一次点击后的偏移量。

    鼠标抬起要干的事:让移动和抬起时间同时=null; 

                                    让盒子位置固定住;

可调大小面板实现(Resizeable Panel)

前端UI组件仓库必备,先从分析实现原理到步骤分解,走完全过程

13047 学习 · 48 问题

查看课程

相似问题