JavaScript non dispone dei comodi metodi trigger() e triggerHandler() di jQuery. Per eseguire il codice legato ad un evento click dobbiamo usare un altro approccio.
Consideriamo il seguente codice:
'use strict';
const on = ( element, evt, callback ) => {
element.addEventListener( evt, callback, false );
};
on( document.getElementById( 'test' ), 'click', () => {
console.log( 'Test' );
});
Abbiamo legato un evento click
ad un elemento. Per innescarlo questa è la procedura:
'use strict';
const evt = new MouseEvent( 'click' );
document.getElementById( 'test' ).dispatchEvent( evt );
In pratica abbiamo usato l'oggetto MouseEvent
in combinazione con il metodo dispatchEvent()
. Questa soluzione funziona nei browser più moderni.