You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Nov 18, 2021. It is now read-only.
FT's dom delegate library is a component for binding to events on all target elements matching the given selector, irrespective of whether anything exists in the DOM at registration time or not. This allows developers to implement the event delegation pattern.
To instantiate Delegate on the body and listen to some events:
functionhandleButtonClicks(event){// Do some things}functionhandleTouchMove(event){// Do some other things}document.addEventListener('DOMContentLoaded',function(){vardelegate=newDelegate(document.body);delegate.on('click','button',handleButtonClicks);// Listen to all touch move// events that reach the bodydelegate.on('touchmove',handleTouchMove);});
The event to listen for e.g. mousedown, mouseup, mouseout, error, click, etc.
selector (string)
Any kind of valid CSS selector supported by matchesSelector. Some selectors, like #id or tag will use optimized functions internally that check for straight matches between the ID or tag name of elements.
null is also accepted and will match the root element set by root(). Passing a handler function into .on's second argument is equivalent to .on(eventType, null, handler).
handler (function)
Function that will handle the specified event on elements matching the given selector. The function will receive two arguments: the native event object and the target element, in that order.
useCapture (boolean)
Whether or not to listen during the capturing (pass in true) or bubbling phase (pass in false). If no value passed in, it will fallback to a 'sensible default', which is true for error, blur and focus events and false for all other types.
Calling off with no arguments will remove all registered listeners, effectively resetting the instance.
eventType (string)
Remove handlers for events matching this type considering the other parameters.
selector (string)
Only remove listeners registered with the given selector, among the other arguments.
If null passed listeners registered to the root element will be removed. Passing in a function into off's second parameter is equivalent to .off(eventType, null, handler[, useCapture]) (the third parameter will be ignored).
handler (function)
Only remove listeners registered with the given handler function, among the other arguments. If not provided, remove all handlers.
useCapture (boolean)
Only remove listeners with useCapture set to the value passed in. If not provided, remove listeners added with useCapture set to true and false.
.root([element])
element (Node)
Set the delegate's root node. If no element passed in the root node will be deleted and the event listeners will be removed.
.destroy()
Short hand for off() and root(), ie both with no parameters. Used to reset the delegate object.