Gunnar Bittersmann: Vanilla – best practice gesucht

Beitrag lesen

@@Matthias Apsel

$('form').on('click', '.foo', do_B);
// JQuerys 'click' lauscht auch auf Tastatur und Touch
$('form').change(do_A);

Wie würde man dies idealerweise umsetzen? A und B in eine Funktion und beim Aufruf nach event.target schauen?

Das sollte dasselbe tun (mit do_A() und do_B() wie gehabt):

document.forms[0].addEventListener('click', event => {
  if (event.target.classList.contains('foo') {
    do_B();
  }
});
document.forms[0].addEventListener('change', do_A);

A und B in getrennte Funktionen? Wovon wäre diese Entscheidung abhängig?

Davon, ob B ohne A Sinn hat. Dann:

do_B = function() {
  // do something;
} 

do_A = function() {
  // do something;
}

document.forms[0].addEventListener('click', event => {
  if (event.target.classList.contains('foo') {
    do_B();
    do_A();
  }
});
document.forms[0].addEventListener('change', do_A);

🖖 Stay hard! Stay hungry! Stay alive! Stay home!

--
Home Office ist so frustierend, weil man jetzt noch viel stärker bemerkt mit wievielen Menschen man zu tun hat, die nicht sinnerfassend lesen können. (@Grantscheam)