你可以使用一个小比例的数学......
var xratio=225/420; //420-mouse-x-coord divided by 420
var yratio=38/38; // mouse-y-coord/element height
var x=320*xratio;
var y=38*yratio;
您可能必须把x和y的值Math.round()来得到一个完美的像素 而不是小数。
编辑
你拥有它基于什么你所有的偏移量(我用225来调整,但您可能需要增加或减少你30元偏移到225之前先用420分来获得这取决于你如何所有的偏移)
为了扭转你愿意,你可以使用交叉相乘或简单的代数什么工程师总结的传动比百分比:
161到320,什么x为420;
(三百二十〇分之一百六十一)=(X/420)
0.503125 =(X/420)
0.503125 * 420 = X
211.3125 = X;
您的x坐标必须是420宽度对象上的211.3125,与320宽度对象上的161相同;
ALSO:
对于任何人谁可能是想为Web应用程序做到这一点, getBoundingClientRect()是比较容易的方式,然后用所有的各种脏性能处理。
https://developer.mozilla.org/en-US/docs/Web/API/Element/getBoundingClientRect
如果我申请这个公式我没有确切或接近得到预期的结果。 –
哎呀忘了一些东西。现在就试试。 – user2782001
似乎可以使用示例数据,但如果我在[103,38]上应用,那么结果是错误的,因此可能是我们需要计算的其他东西。还有一件事你使用屏幕大小来计算X,我猜他们可能是元素的宽度,而元素的宽度是320px在320维度,如果我错了,纠正我。 –