SELF-Treffen in Mannheim 2025

SELFHTML wird 30 Jahre alt!
Die Mitgliederversammlung findet am 24.05.2025 um 10:00 statt. Alle Mitglieder und Interessierte sind herzlich eingeladen.
Davor und danach gibt es Gelegenheiten zum gemütlichen Beisammensein. → Veranstaltungs-Ankündigung.

Beispiel:JS-event-addeventlistener2.html

Aus SELFHTML-Wiki
Wechseln zu: Navigation, Suche
<!DOCTYPE html>
<html lang="de">
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0;" />
  <link rel="stylesheet" media="screen" href="./Beispiel:SELFHTML-Beispiel-Grundlayout.css" />
  <style>
    #buehne {
      cursor: url(http://wiki.selfhtml.org/images/5/53/Maus.svg), auto;
    }
    button span {
      display: block;
      font-size: 1.3em;
      font-weight: bold;
    }
    .abbruch {
      color: red;
    }
    .erfolg {
      color: green;
    }
    #katze {
      position: absolute;
      font-family: Segue UI, Geneva, sans-serif;
      font-size: 2em;
      color: black;
    }
  </style>
  <title>Hinzufügen und Entfernen eines Eventhandlers</title>
</head>
<body>
  <h1>Hinzufügen und Entfernen eines Eventhandlers</h1>

  <main id="buehne">
    <p>
      Wenn Sie einen Eventhandler hinzufügen, folgt die Katze der Maus.<br>
      Mit einem Klick auf den rechten Button entfernen Sie den Eventhandler wieder.
    </p>
    <button id="hin">Eventhandler <span class="erfolg">hinzufügen</span></button>
    <button id="weg">Eventhandler<span class="abbruch">entfernen</span></button>
    <p id="katze"></p>
  </main>

<script>
// Hier legen Sie fest, mit welchen Variablen die integrierte Helferfunktion  aufgerufen werden soll:
// var obj   Element, das einen Eventhandler bekommen soll
// var type  Eventhandler
// var fn    Funktion, die aufgerufen werden soll


function AddEvent(obj,type,fn) {                 // Helferfunktion für alle Browser
  if (obj.addEventListener)
    obj.addEventListener (type,fn,false);
  else if (obj.attachEvent)
    obj.attachEvent ('on'+type,fn);
}

function RemoveEvent(obj,type,fn) {              // Helferfunktion für alle Browser
  if (obj.removeEventListener)
    obj.removeEventListener (type,fn,false);
  else if (obj.detachEvent)
    obj.detachEvent ('on'+type,fn);
}

var buehne = document.getElementById('buehne'); 
var katze = document.getElementById('katze'); 
var hin = document.getElementById('hin'); 
var weg = document.getElementById('weg'); 

AddEvent (hin,'click',function(){AddEvent(buehne,'mousemove',run); katze.innerHTML ='<img src="http://wiki.selfhtml.org/images/d/d0/Katze.svg"/>';});
AddEvent (weg,'click',function(){RemoveEvent(buehne,'mousemove',run); katze.innerHTML ='';});

run = function(e) {
  var e = e || window.event;
  katze.style.left  = (e.clientX - 80) + 'px';
  katze.style.top = (e.clientY - 80) + 'px';
}
</script>
</body>
</html>