javascript - 如何用js计算出鼠标移动的方向和某条直线之间的角度?
巴扎黑
巴扎黑 2017-04-11 09:02:35
[JavaScript讨论组]

页面上有一条直线(不一定是水平的),现在当鼠标在其上面移动的时候要获取mousemove时的方向与该直线的夹角是多少度,有什么好的思路?

巴扎黑
巴扎黑

全部回复(2)
PHPz

1 先获取直线的2各端点和鼠标当前相对于直线所在容器的坐标值
2 设直线的2各个端点的坐标PS(x1,y1) PE(x2,y2)
3.当前鼠标点位置M(x3,y3)
4.直线的结束点(题目中的右下方点)设为坐标原点(0,0)
5.直线点的坐标转成PS(x1-x2,(y1-y2)*-1) PE(0,0)
6.鼠标点位置M(x3-x2,(y3-y2)*-1)
4.求出直线和水平线的夹角PA=Math.atan2(PE.y-PS.y,PE.x-PS.x)*180/Math.PI;
5.求出鼠标点和PE点之间的直线和水平线之间的夹角MA
6.PA-MA的差就是你期望的角度

伊谢尔伦

offsetx和offsety方法看看,应该能做好!
关于这几个方法的说明

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号