要獲取鼠標(biāo)在盒子中的位置,可以使用鼠標(biāo)事件對(duì)象中的clientX和clientY屬性獲取鼠標(biāo)在瀏覽器窗口中的坐標(biāo),再結(jié)合盒子元素的位置和大小計(jì)算出鼠標(biāo)在盒子中的位置。
以下是一個(gè)示例代碼:
<div id="box" style="width: 300px; height: 200px; border: 1px solid #000;"></div>
<script>
const box = document.getElementById('box');
box.addEventListener('mousemove', function(event) {
const mouseX = event.clientX;
const mouseY = event.clientY;
const boxX = box.offsetLeft;
const boxY = box.offsetTop;
const boxWidth = box.offsetWidth;
const boxHeight = box.offsetHeight;
const mouseXInBox = mouseX - boxX;
const mouseYInBox = mouseY - boxY;
if (mouseXInBox >= 0 && mouseXInBox <= boxWidth &&
mouseYInBox >= 0 && mouseYInBox <= boxHeight) {
console.log('Mouse position in box: ', mouseXInBox, mouseYInBox);
}
});
</script>
該代碼中,我們使用document.getElementById()方法獲取盒子元素,然后添加了一個(gè)mousemove事件監(jiān)聽器。當(dāng)鼠標(biāo)在盒子內(nèi)移動(dòng)時(shí),獲取鼠標(biāo)在瀏覽器窗口中的坐標(biāo)clientX和clientY,然后計(jì)算鼠標(biāo)在盒子中的位置,最后打印輸出。