Event methodes en properties

Een event is een object met eigen methodes en properties.

Event methodes

De twee belangrijkste methodes zijn:

  • e.stopPropagation(): stopt event bubbling.

  • e.preventDefault(): de default actie wordt niet getriggerd.

$('a').click(function(e) { 
    e.stopPropagation();
    alert('U klikte op een a-tag');
});

Het event e wordt als parameter aan de functie toegevoegd. De methode e.stopPropagation() zorgt ervoor dat event bubbling wordt uitgeschakeld.

$('a').click(function(e) {
    e.preventDefault();
    alert('Link werkt niet meer');
});

De pagina bevat twee externe links. De methode e.preventDefault() zorgt ervoor dat de default actie (het openen van de link) niet wordt uitgevoerd.

De positie van e.preventDefault() binnen de functie is belangrijk. Stel dat de functie een fout bevat. Alle codes voor de fout worden uitgevoerd, maar alle codes na de fout niet.

Event properties

Enkele event properties:

  • e.currentTarget: het elementtype waarop het event werd uitgevoerd.

  • e.pageX: de horizontale positie van de cursor op de pagina.

  • e.pageY: de verticale positie van de cursor op de pagina.

  • e.timeStamp: het tijdstip waarop het event werd uitgevoerd. Een timestamp is het aantal ms verstreken sinds het laden van de pagina (Chrome, Firefox) of sinds 1 januari 1970 (Internet Explorer).

  • e.type: het eventtype.

$(function() {
    $('h1, h2, p, li').click(function(e) { 
        var props = '';
        props += 'e.currentTarget: ' + e.currentTarget + '<br>';
        props += 'e.pageX: ' + e.pageX + '<br>';
        props += 'e.pageY: ' + e.pageY + '<br>';
        props += 'e.timeStamp: ' + e.timeStamp + '<br>'; 
        props += 'e.type: ' + e.type + '<br>';
        $('#props').html(props);
    });
});

Last updated