0

我无法理解在什么情况下您会使用自定义事件。我的意思是由CustomEvent构造函数创建的那些。

我理解语法本身,只是不知道它为什么有用。如果有人可以提供自定义事件的真实应用示例,那就太好了。

4

1 回答 1

1

我使用它(无耻插件)在 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 何时改变形状。

于 2016-12-17T18:28:59.297 回答