首页 > 代码库 > js获得圆的中心点和利用父级中心点设置子级圆的位置
js获得圆的中心点和利用父级中心点设置子级圆的位置
// 算出圆的中心点
function circleCenter(obj) {
var centerPointerLeft = obj.offsetLeft + obj.offsetWidth / 2;
var centerPointerTop = obj.offsetTop + obj.offsetHeight / 2;
return {left: centerPointerLeft, top: centerPointerTop};
}
console.log(circleCenter(wrap));
// 设置中心
function setCenter(obj, point) {
obj.style.left = point.left - obj.offsetWidth / 2 - obj.parentNode.offsetLeft + "px";
obj.style.top = point.top - obj.offsetHeight / 2 - obj.parentNode.offsetTop + "px";
}
setCenter(box, circleCenter(wrap));
注:
结构:
<body>
<div id="wrap">
<div id="box"></div>
</div>
</body>
样式:
#wrap{
width: 300px;
height: 300px;
border-radius: 300px;
position: relative;
background: rgb(168, 218, 219);
}
#box{
width: 30px;
height: 30px;
border-radius: 100px;
position: absolute;
background: rgb(226, 181, 219);
}
js获得圆的中心点和利用父级中心点设置子级圆的位置