我无法理解您将在何种情况下使用自定义事件。
我指的是CustomEvent
构造函数创建的那些。
我理解语法本身,而不是为什么它有用。如果有人可以提供自定义事件的真实世界应用示例,那将是很好的。
答案 0 :(得分: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更改形状。