2016-12-17 3 views
0

У меня возникли проблемы с пониманием того, в каких ситуациях вы будете использовать пользовательские события. Я имею в виду те, которые были созданы конструктором CustomEvent.Какова цель пользовательских событий в javascript?

Я понимаю сам синтаксис, а не почему это полезно. Было бы неплохо, если бы кто-нибудь мог привести пример реального применения пользовательских событий.

+1

Это система обмена сообщениями. Все, что вы можете сделать с этим из браузера, будет работать. Большинство ответов, вероятно, будут в основном полагаться на примеры, специфичные для домена (например, приложение учета транзакций). –

ответ

1

Я использую его (shameless plug), чтобы поднять события «изменить размер» на элементах div, а затем использовать отдельную структуру привязки (aurelia) для прослушивания этих событий.

явный пример кода:

var element = this.element; // some element 
var erd = erd({ strategy: 'scroll' }); 

var widthOld = element.offsetWidth; 
var heightOld = element.offsetHeight; 

this.callback =() => { 
    var event = new CustomEvent("resize", { 
    detail: { 
     width: this.element.offsetWidth, 
     height: this.element.offsetHeight, 
     widthOld: widthOld, 
     heightOld: heightOld 
    } 
    }); 
    element.dispatchEvent(event); 
    widthOld = this.element.offsetWidth; 
    heightOld = this.element.offsetHeight; 
}; 

erd.listenTo(this.element, this.callback); 

где ERD является element-resize-detector, что позволяет определить, когда любой DIV изменяет форму.

Смежные вопросы