YpsilonEventHandler @latest

HTML

<div id="app">
  <button data-action="save">Save</button>
  <button data-action="delete">Delete</button>
</div>

<script src="https://cdn.jsdelivr.net/npm/ypsilon-event-handler@latest"></script>

JavaScript

class MyHandler extends YpsilonEventHandler {
  constructor() {
    super({ '#app': ['click'] }); // Falls back to handleClick()
  }

  handleClick(event, target) {
    const action = target.dataset.action;
    if (action && this[action]) this[action](target, event);
  }

  save(target) { console.log('Saving...'); }
  delete(target) { console.log('Deleting...'); }
}

new MyHandler(); // Adding listeners Done