UNPKG

mframejs

Version:
50 lines 1.64 kB
import { DOM } from '../utils/exported'; export class DomEventHandler { constructor() { this.count = 0; this.id = []; this.events = []; this.target = []; this.call = []; this.eventHandlerBinded = this.eventHandler.bind(this); } listenFor(event, target, call) { this.count++; if (this.events.indexOf(event) === -1) { this.addEventListener(event); } this.id.push(this.count); this.events.push(event); this.target.push(target); this.call.push(call); return this.count; } removeListener(id) { this.id.splice(id, 1); const event = this.events.splice(id, 1); this.target.splice(id, 1); this.call.splice(id, 1); if (this.events.indexOf(event) === -1) { this.removeEventListener(event); } } addEventListener(event) { DOM.document.body.addEventListener(event, this.eventHandlerBinded, false); } removeEventListener(event) { DOM.document.body.removeEventListener(event, this.eventHandlerBinded, false); } eventHandler(event) { const targetID = this.target.indexOf(event.target); const targetEvent = this.events[targetID]; const eventID = this.events.indexOf(event.type); if (eventID !== -1 && targetID !== -1) { if (targetID !== -1 && targetEvent === event.type) { this.call[targetID](event); } else { } } } } //# sourceMappingURL=domEventHandler.js.map