- 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
// custom events polyfill
(function(){
// source: https://developer.mozilla.org/en-US/docs/Web/API/CustomEvent/CustomEvent#Polyfill
if(typeof window.CustomEvent === "function"){ return false; }
function CustomEvent(event, params){
params = params || { bubbles: false, cancelable: false, detail: undefined };
var evt = document.createEvent('CustomEvent');
evt.initCustomEvent(event, params.bubbles, params.cancelable, params.detail);
return evt;
}
CustomEvent.prototype = window.Event.prototype;
window.CustomEvent = CustomEvent;
})();
// if you see something like this in jQuery
$(document).trigger('demo_email', {
email: email,
is_offer: false
});
// you can do this in vanilla js (once the polyfill is in place)
document.dispatchEvent(new CustomEvent('demo_email', {
detail: {
email: email,
is_offer: false
}
}));