Plaats van de muis bepalen in het document

Soms is het handig om te weten waar de muis-aanwijzer zich bevindt in het window waar je document in zit. Hieronder zie je de X- en Y-coördinaten waar het puntje van de muis-pijl zich bevindt.

Coördinaten: (Nog) niet gedefinieerd.

Op deze pagina wordt uitgelegd hoe je dat doet. De code van de voorbeelden kun je downloaden om zelf te gebruiken.

Dit is een typisch voorbeeld van JavaScript dat pas actief mag worden als het hele document geladen is. Het tonen van de muis-coördinaten kan namelijk pas beginnen als de grootte van het document bekend is.

In het onderstaande voorbeeld wordt dat uitgewerkt.

Hieronder zie je een rechthoek. Als je daar met de muis in komt, verandert de achtergrondkleur en verschijnen de X- en Y-coöordinaten in box er onder. Als je de muis weer buiten de rechthoek beweegt, verdwijnt de achtergrond en worden de coördinaten niet meer weergegeven.

Coördinaten in de box: (Nog) niet gedefinieerd.

Gebruik:

De code van het eerste voorbeeld ziet er als volgt uit:
Om praktische redenen zijn sommige tags over meerdere regels verdeeld. In je eigen pagina moet dat op één regel staan!
 
(Zet dit in de <HEAD>).

<style>
#muis_coordinaten {
  width: 50%; height:auto; margin:2px auto; padding:4px;
  border:2px solid navy; text-align:center
}
</style>
<script>
window.onload = function() {
  document.onmousemove = function(e) {
    muis_coordinaten.innerHTML = 'Coördinaten:
    X: ' + e.clientX + 'px, Y: ' + e.clientY + 'px.';
  }
</script>

(Zet dit in de <BODY>, op de plaats waar je het nodig hebt).

<div id="muis_coordinaten">Coördinaten: (Nog) niet gedefinieerd.</div>

De code van het tweede voorbeeld ziet er als volgt uit:
Om praktische redenen zijn sommige tags over meerdere regels verdeeld. In je eigen pagina moet dat op één regel staan!
 
(Zet dit in de <HEAD>).

<style>
#box_coordinaten {
  width: 60%; height:auto; margin:2px auto; padding:4px;
  border:2px solid navy; text-align:center
}
#box {
  width: 60%; height:200px; margin:2px auto; padding:4px;
  border:2px solid navy; text-align:center; background-color:transparent
}
</style>
<script>
window.onload = function() {
  var deBox = document.getElementById('box');
  deBox.onmousemove = function(e) {
    box_coordinaten.innerHTML = 'Coördinaten in de box: X: ' +
    (e.clientX - deBox.offsetLeft + window.pageXOffset) + 'px, Y: ' +
    (e.clientY - deBox.offsetTop + window.pageYOffset) + 'px.';
  }
  deBox.onmouseover = function () {
    deBox.style.backgroundColor = '#ffd'
  }
  deBox.onmouseout = function () {
    box_coordinaten.innerHTML = 'De muis heeft de Box verlaten!';
    deBox.style.backgroundColor = 'transparent'
  }
};
</script>

Downloaden:
 
Druk op de knop: Download deze code  File: voorb380.zip, 721 bytes.

Opmerking:
 
Het JavaScript op deze pagina mag pas actief worden als het hele document geladen is. Voor het werken met mouse-events is dat een must. Er is een trend gaande om dat voor elk JavaScript te doen, zeker als je met een JavaScript-bibliotheek werkt zoals jQuery. Dit kan echter problemen geven als de HTML in het document door JavaScript wordt gegenereerd. Wees daar op bedacht!

 
terug

html-380; Laatste wijziging: 14 april 2023