你可以使用一個小比例的數學......
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維度,如果我錯了,糾正我。 –