从父右边缘获取位置,单位为 %



给定一个 clientX 坐标,我如何确定该点离父容器右边缘有多远?我可以正确地做左边缘

event.target.style.left = (((cX-event.target.parentNode.offsetLeft)) / event.target.parentNode.clientWidth)*100 +"%";

但似乎无法弄清楚要比较的值,相对于右边缘。(已编辑(

或者,实际上,Event.target的右边缘离右边有多远,因为style.right的位置与右边缘的距离 cX 是 JQuery UI 可拖动停止回调事件的客户端 X

尝试使用getClientBoundingRect()

function getPosition(e) {
var rect = e.target.getBoundingClientRect();
console.log(rect)
var x =  Math.abs(e.clientX - rect.right);
var y = e.clientY - rect.top;
return {
x,
y,
procent: x / (rect.width / 100)  
}
}

例: https://jsfiddle.net/bogdanm/ocLn138v/

最新更新