Press n or j to go to the next uncovered block, b, p or k for the previous block.
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 | 24x 24x 24x 24x 24x 24x 13x | /**
* Binds the given callback with context to 'eventName' on the element / document and returns the reference.
*
```js
import Component from '@ember/component';
import EventHandler from '@freshworks/modal/utils/event-handler';
export default Component.extend({
state: null,
action: {
setFocusListener() {
let _focusListener = EventHandler.bindEvent({
context: this,
eventName: 'focusin',
callback: this.loopFocus
});
set(this, '_focusListener', _focusListener);
}
}
});
```
*
* @function bindEvent
* @public
* @param {string} eventName Name of the event to bind the callback to
* @param {function} callback Callback function for the eventhandler
* @param {string} element element selector. Defaults to document
* @return {function} Returns the reference of the callback binded
*/
function bindEvent({ eventName, callback, element } = {}) {
let domElement = element ? document.querySelector(element) : document;
Eif(domElement) {
domElement.addEventListener(eventName, callback);
}
return callback;
}
/**
* Unbinds the given callback from 'eventName' on the element / document.
```js
import Component from '@ember/component';
import EventHandler from '@freshworks/modal/utils/event-handler';
export default Component.extend({
state: null,
action: {
setFocusListener() {
let _focusListener = EventHandler.unbindEvent({
eventName: 'focusin',
callback: this.loopFocus
});
set(this, '_focusListener', _focusListener);
}
}
});
```
*
* @function unbindEvent
* @public
* @param {string} eventName Name of the event to bind the callback to
* @param {function} callback Callback function for the eventhandler
* @param {string} element element selector. Defaults to document
*/
function unbindEvent({ eventName, callback, element } = {}) {
let domElement = element ? document.querySelector(element) : document;
if(domElement) {
domElement.removeEventListener(eventName, callback);
}
}
export {
unbindEvent,
bindEvent
} |