Acionar um evento

Alguns elementos fornecem métodos específicos para acionar um evento.

Por exemplo, para disparar um clickevento em qualquer elemento, você usa o click()método:

el.click();Linguagem de código:  CSS  ( css )

Os elementos de texto de entrada e área de texto fornecem os métodos focus()e blur()para acionar os eventos focuse blur:

el.focus();
el.blur();Linguagem de código:  CSS  ( css )

O elemento form possui os métodos submit()and reset()para acionar os eventos submitand reset:

const frm = document.querySelector('form');
// trigger the submit event
frm.submit();

// trigger the reset event
frm.reset();
Linguagem de código:  JavaScript  ( javascript )

Para acionar outros eventos, como mousedownou change, você usa a seguinte triggerEvent()função auxiliar:

function triggerEvent(el, type) {
    // IE9+ and other modern browsers
    if ('createEvent' in document) {
        var e = document.createEvent('HTMLEvents');
        e.initEvent(type, false, true);
        el.dispatchEvent(e);
    } else {
        // IE8
        var e = document.createEventObject();
        e.eventType = type;
        el.fireEvent('on' + e.eventType, e);
    }
}Linguagem de código:  JavaScript  ( javascript )

Suponha que você tenha um texto de entrada:

<input type="text" name="username">Linguagem de código:  HTML, XML  ( xml )

O seguinte vincula um manipulador de eventos ao clickevento:

const input = document.querySelector('input[type="text"]');
input.addEventListener('change', (e) => {
    console.log('Input changed');
});Linguagem de código:  JavaScript  ( javascript )

Para acionar o changeevento, você usa a triggerEvent()função da seguinte forma:

triggerEvent(input, 'change');Linguagem de código:  JavaScript  ( javascript )

Deixe um comentário

O seu endereço de email não será publicado. Campos obrigatórios marcados com *