[英]Find mouse event target for position in JavaScript
我實際上並不想觸發事件。 如果在 position x/y 處單擊鼠標,我只想以編程方式找出哪個元素將處理onmousedown
。
目的是然后向該元素添加一個攔截器 which point-event: none
// without pointer-events: none;
const element = document.elementFromPoint(mouseX, mouseY);
function elementsFromPoint(x, y) { // pointer-events: none;
const elements = document.body.getElementsByTagName("*");
var elementsList = Array.prototype.slice.call(elements);
var results = []
elementsList.forEach(element => {
var rect = element.getBoundingClientRect();
if (rect.left < x && x < rect.right && rect.top < y && y < rect.bottom) {
results.push(element)
}
});
return results;
}
window.addEventListener('load', () => {
const textarea = document.querySelector('#text')
document.addEventListener('click', (e) => {
const element = elementsFromPoint(e.clientX, e.clientY);
console.log(element)
})
})
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.