web-dev-qa-db-fra.com

Obtenir l'élément à la position spécifiée - JavaScript

À l'aide de Javascript, comment identifier l'élément à une position donnée? En gros, je cherche à écrire une fonction qui prend deux paramètres d’entrée (les coordonnées x et y) et renvoie l’élément html à la position à l’écran représentée par les paramètres.

126
kjv
222
rahul

Vous pouvez utiliser la méthode JavaScript native elementFromPoint(x, y), qui renvoie l'élément aux coordonnées x, y dans la fenêtre.

Voir le elementFromPoint w3c draft

Et un exemple de code:

function changeColor(newColor) {
    // Get the element placed at coords (2, 2)
    var elem = document.elementFromPoint(2, 2);
    // Set the foreground color to the element
    elem.style.color = newColor;
}
<p id="para1">Change this text color using the following buttons.</p>
<button onclick="changeColor('blue');">Blue</button>
<button onclick="changeColor('red');">Red</button>

Vous pouvez utiliser setInterval() pour vérifier en permanence l'événement de survol de l'élément, mais cela n'est pas recommandé. Essayez plutôt d'utiliser .hover(...) et css pour améliorer les performances de l'application.

26
Andrés Morales