课程
/前端开发
/JavaScript
/可调大小面板实现(Resizeable Panel)
鼠标当前x轴 减去 鼠标在控制元素上x轴的偏移 这样为什么就是控制元素的Left了?这到底是怎么算的啊?求大神解决
2016-11-26
源自:可调大小面板实现(Resizeable Panel) 2-6
正在回答
我帮你画了个图 你看,只要明白这个原理,就是剩下函数的不同写法罢了
爪哇一只猫 提问者
本来画了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;
让盒子位置固定住;
举报
前端UI组件仓库必备,先从分析实现原理到步骤分解,走完全过程
1 回答计算鼠标按在控制元素上的x轴偏移 是什么意思啊 大神帮帮忙 就卡在这个计算的问题上了
4 回答为什么将控制元素的Left和top设置为空,bug就没有了呢?
1 回答为什么在设置Panel的宽度的时加上10px控制元素就不会动了?
1 回答怎么禁止className为title的那个元素的复制文本的功能
1 回答为什么要给父元素relative?