版博士V2.0程序
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.

EventTarget.d.ts 2.2 KiB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960
  1. import IEventListener from './IEventListener';
  2. import Event from './Event';
  3. import IEventTarget from './IEventTarget';
  4. import IEventListenerOptions from './IEventListenerOptions';
  5. /**
  6. * Handles events.
  7. */
  8. export default abstract class EventTarget implements IEventTarget {
  9. readonly _listeners: {
  10. [k: string]: (((event: Event) => void) | IEventListener)[];
  11. };
  12. readonly _listenerOptions: {
  13. [k: string]: (IEventListenerOptions | null)[];
  14. };
  15. /**
  16. * Adds an event listener.
  17. *
  18. * @param type Event type.
  19. * @param listener Listener.
  20. * @param options An object that specifies characteristics about the event listener.(currently only once)
  21. * @param options.once
  22. */
  23. addEventListener(type: string, listener: ((event: Event) => void) | IEventListener, options?: IEventListenerOptions): void;
  24. /**
  25. * Adds an event listener.
  26. *
  27. * @param type Event type.
  28. * @param listener Listener.
  29. */
  30. removeEventListener(type: string, listener: ((event: Event) => void) | IEventListener): void;
  31. /**
  32. * Dispatches an event.
  33. *
  34. * @param event Event.
  35. * @returns The return value is false if event is cancelable and at least one of the event handlers which handled this event called Event.preventDefault().
  36. */
  37. dispatchEvent(event: Event): boolean;
  38. /**
  39. * Adds an event listener.
  40. *
  41. * TODO:
  42. * Was used by with IE8- and Opera. React believed Happy DOM was a legacy browser and used them, but that is no longer the case, so we should remove this method after that this is verified.
  43. *
  44. * @deprecated
  45. * @param type Event type.
  46. * @param listener Listener.
  47. */
  48. attachEvent(type: string, listener: ((event: Event) => void) | IEventListener): void;
  49. /**
  50. * Removes an event listener.
  51. *
  52. * TODO:
  53. * Was used by IE8- and Opera. React believed Happy DOM was a legacy browser and used them, but that is no longer the case, so we should remove this method after that this is verified.
  54. *
  55. * @deprecated
  56. * @param type Event type.
  57. * @param listener Listener.
  58. */
  59. detachEvent(type: string, listener: ((event: Event) => void) | IEventListener): void;
  60. }