现有问题:
点击字体之间的空白处(比如:UI Design和UX Researcher之间的白色区域)蓝色滑块会产生移动(top值不固定),不够精准定位。
css代码:
灰色高度计算方式 : height: calc(100% - 8px * 2);
蓝色块高度为20px: height: 20px;
JS代码:
container.addEventListener("click", function(event) {
let yPosition = event.clientY - container.getBoundingClientRect().top - (theThing.clientTop + 20);
theThing.style.top = yPosition + "px";
});
功能实现图:
谁让你用 event.clientY 了?
你的思路应该是获取单击的块(event.target),然后获取块的坐标,然后定位过去,这样定位才准。
你定位到单击位置那肯定不准呀。