當前位置: 首頁>>編程示例 >>用法及示例精選 >>正文


Dart Events用法及代碼示例

dart:html 庫中Events 類的用法介紹如下。

支持偵聽和調度瀏覽器事件的基類。

通常通過 Stream getter 訪問事件:

element.onMouseOver.listen((e) => print('Mouse over!'));

要訪問在一個元素上聲明的冒泡事件,但可能會冒泡到另一種元素類型(常見於 MediaElement 事件):

MediaElement.pauseEvent.forTarget(document.body).listen(...);

要對事件使用捕獲:

Element.keyDownEvent.forTarget(element, useCapture: true).listen(...);

自定義事件可以聲明為:

class DataGenerator {
  static EventStreamProvider<Event> dataEvent =
      new EventStreamProvider('data');
}

然後偵聽器應通過以下方式訪問事件:

DataGenerator.dataEvent.forTarget(element).listen(...);

自定義事件也可以通過以下方式訪問:

element.on['some_event'].listen(...);

這種方法通常不鼓勵使用,因為它會丟失事件類型,並且某些 DOM 事件可能有多個依賴於平台的事件名稱。通過使用標準的 Stream getter,您將自動獲得平台特定的事件名稱。


實施者

ElementEvents

相關用法


注:本文由純淨天空篩選整理自dart.dev大神的英文原創作品 Events class。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。