Custom Event on localStorage
by Anton Kolesnikov
HTML
<button id="btn">Click me!</button>
<div id="text" class="text">
Тут текст
</div>
<div id="text2" class="text">
Тут другой текст
</div>
JavaScript
/*
var originalSetItem = localStorage.setItem;
localStorage.setItem = function(){
document.createEvent('Event').initEvent('itemInserted', true, true);
originalSetItem.apply(this, arguments);
}
*/
var original = window.alert;
window.alert = function() {
console.log('work');
original.apply(this, arguments);
}
document.getElementById('text').addEventListener("alert", function(e) {
e.target.innerHTML = 'work';
}, false);
document.getElementById('text2').addEventListener("alert", function(e) {
e.target.innerHTML = 'work2';
}, false);
document.getElementById('btn').addEventListener('click', function(e) {
[].forEach.call(document.getElementsByClassName('text'), function(el) {
el.dispatchEvent(event);
})
}, false);
var event = new Event('alert', { bubbles: true, cancelable: true });