Module org.htmlunit

Class EventTarget

java.lang.Object
org.htmlunit.corejs.javascript.SlotMapOwner<org.htmlunit.corejs.javascript.Scriptable>
org.htmlunit.corejs.javascript.ScriptableObject
org.htmlunit.javascript.HtmlUnitScriptable
org.htmlunit.javascript.host.event.EventTarget
All Implemented Interfaces:
Serializable, Cloneable, org.htmlunit.corejs.javascript.ConstProperties<org.htmlunit.corejs.javascript.Scriptable>, org.htmlunit.corejs.javascript.debug.DebuggableObject, org.htmlunit.corejs.javascript.PropHolder<org.htmlunit.corejs.javascript.Scriptable>, org.htmlunit.corejs.javascript.Scriptable, org.htmlunit.corejs.javascript.SymbolScriptable
Direct Known Subclasses:
AbortSignal, Animation, AudioNode, BaseAudioContext, BatteryManager, BroadcastChannel, EventSource, FileReader, FontFaceSet, IDBDatabase, IDBRequest, IDBTransaction, MediaDevices, MediaKeySession, MediaQueryList, MediaRecorder, MediaSource, MediaStream, MediaStreamTrack, MessagePort, MIDIAccess, MIDIPort, NetworkInformation, Node, Notification, PaymentRequest, PaymentResponse, Performance, PermissionStatus, PresentationAvailability, PresentationConnection, PresentationRequest, RemotePlayback, RTCPeerConnection, RTCSctpTransport, Screen, ScreenOrientation, ServiceWorker, ServiceWorkerContainer, ServiceWorkerRegistration, SharedWorker, SourceBuffer, SourceBufferList, SpeechRecognition, SpeechSynthesis, SpeechSynthesisUtterance, TextTrack, TextTrackCue, TextTrackList, WebSocket, Window, Worker, WorkerGlobalScope, XMLHttpRequestEventTarget

public class EventTarget extends HtmlUnitScriptable
JavaScript host object for EventTarget.
Author:
Ahmed Ashour, Ronald Brill, Atsushi Nakagawa
See Also:
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.htmlunit.corejs.javascript.ScriptableObject

    org.htmlunit.corejs.javascript.ScriptableObject.DescriptorInfo, org.htmlunit.corejs.javascript.ScriptableObject.KeyComparator, org.htmlunit.corejs.javascript.ScriptableObject.LambdaGetterFunction, org.htmlunit.corejs.javascript.ScriptableObject.LambdaSetterFunction
  • Field Summary

    Fields inherited from class org.htmlunit.corejs.javascript.ScriptableObject

    CONST, DONTENUM, EMPTY, PERMANENT, READONLY, UNINITIALIZED_CONST

    Fields inherited from class org.htmlunit.corejs.javascript.SlotMapOwner

    isSealed

    Fields inherited from interface org.htmlunit.corejs.javascript.Scriptable

    NOT_FOUND
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    addEventListener(String type, org.htmlunit.corejs.javascript.Scriptable listener, boolean useCapture)
    Registers an event listener on this event target.
    protected void
    Clears the event listener container.
    boolean
    Dispatches an event into the event system.
    void
    Executes the event on this object only (needed for instance for onload on (i)frame tags).
    Fires the event on this node with capturing and bubbling phases.
    org.htmlunit.corejs.javascript.Function
    Returns the specified event handler function.
    Returns the container for event listeners, creating it if necessary.
    boolean
    Returns whether there are any event handlers for the specified event name.
    protected boolean
    Returns whether the event handler property should be set at the window level.
    void
    Creates an instance of this object.
    void
    removeEventListener(String type, org.htmlunit.corejs.javascript.Scriptable listener, boolean useCapture)
    Removes a previously registered event listener from this event target.
    void
    setEventHandler(String eventName, Object value)
    Defines an event handler (or any other object) for the given event name.

    Methods inherited from class org.htmlunit.corejs.javascript.ScriptableObject

    applyDescriptorToAttributeBitset, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkNotSealed, checkPropertyChangeForSlot, checkPropertyChangeForSlot, checkPropertyDefinition, checkPropertyDefinition, checkSlotRemoval, defineBuiltinProperty, defineBuiltinProperty, defineBuiltInProperty, defineBuiltInProperty, defineBuiltInProperty, defineBuiltInProperty, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineOwnProperty, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, delete, delete, deleteProperty, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, ensureScriptableObjectButNotSymbol, ensureSymbolScriptable, ensureType, get, get, getAllIds, getAncestor, getArrayPrototype, getClassPrototype, getClassPrototype, getDefaultValue, getExternalArrayData, getExternalArrayLength, getFunctionPrototype, getGeneratorFunctionPrototype, getGetterOrSetter, getGetterOrSetter, getObjectPrototype, getOwnPropertyDescriptor, getParentScope, getProperty, getProperty, getProperty, getProperty, getProperty, getPropertyIds, getPrototype, getSuperProperty, getSuperProperty, getSuperProperty, getThis, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, getTypeOf, hasProperty, hasProperty, hasProperty, hasProperty, isAccessorDescriptor, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGenericDescriptor, isGetterOrSetter, isGetterOrSetter, isTrue, preventExtensions, put, put, putConst, putConstProperty, putConstProperty, putOwnProperty, putOwnProperty, putOwnProperty, putProperty, putProperty, putProperty, putProperty, putSuperProperty, putSuperProperty, putSuperProperty, querySlot, redefineProperty, redefineProperty, sameValue, sealObject, setCommonDescriptorProperties, setExternalArrayData, setGetterOrSetter, setParentScope, setPrototype, size

    Methods inherited from class org.htmlunit.corejs.javascript.SlotMapOwner

    associateValue, checkNotSealed, copyAssociatedValue, createSlotMap, defineProperty, defineProperty, get, getAssociatedValue, getAttributes, getAttributes, getAttributes, getAttributes, getAttributes, getIds, has, has, isSealed, readMaps, setAttributes, setAttributes, setAttributes, setAttributes, setAttributes, writeMaps

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.htmlunit.corejs.javascript.Scriptable

    get, getIds, has, has

    Methods inherited from interface org.htmlunit.corejs.javascript.SymbolScriptable

    get, has
  • Constructor Details

    • EventTarget

      public EventTarget()
  • Method Details

    • jsConstructor

      public void jsConstructor()
      Creates an instance of this object.
    • addEventListener

      public void addEventListener(String type, org.htmlunit.corejs.javascript.Scriptable listener, boolean useCapture)
      Registers an event listener on this event target.
      Parameters:
      type - the event type to listen for (e.g. "click")
      listener - the event listener
      useCapture - if true, indicates that the listener should be added for the capture phase
      See Also:
    • getEventListenersContainer

      public final EventListenersContainer getEventListenersContainer()
      Returns the container for event listeners, creating it if necessary.
      Returns:
      the event listeners container
    • executeEventLocally

      public void executeEventLocally(Event event)
      Executes the event on this object only (needed for instance for onload on (i)frame tags).
      Parameters:
      event - the event to execute
      See Also:
    • fireEvent

      public ScriptResult fireEvent(Event event)
      Fires the event on this node with capturing and bubbling phases.
      Parameters:
      event - the event to fire
      Returns:
      the script result
    • hasEventHandlers

      public boolean hasEventHandlers(String eventName)
      Returns whether there are any event handlers for the specified event name.
      Parameters:
      eventName - the event name (e.g. "onclick")
      Returns:
      true if there are any event handlers, false otherwise
    • getEventHandler

      public org.htmlunit.corejs.javascript.Function getEventHandler(String eventType)
      Returns the specified event handler function.
      Parameters:
      eventType - the event type (e.g. "click")
      Returns:
      the handler function, or null if not set
    • dispatchEvent

      public boolean dispatchEvent(Event event)
      Dispatches an event into the event system.
      Parameters:
      event - the event to be dispatched
      Returns:
      false if at least one of the event handlers called preventDefault(); true otherwise
      See Also:
    • removeEventListener

      public void removeEventListener(String type, org.htmlunit.corejs.javascript.Scriptable listener, boolean useCapture)
      Removes a previously registered event listener from this event target.
      Parameters:
      type - the event type (e.g. "click")
      listener - the listener to remove
      useCapture - if true, the listener is removed from the capture phase
      See Also:
    • setEventHandler

      public void setEventHandler(String eventName, Object value)
      Defines an event handler (or any other object) for the given event name.
      Parameters:
      eventName - the event name (e.g. "click")
      value - the handler (null to reset it)
    • isEventHandlerOnWindow

      protected boolean isEventHandlerOnWindow()
      Returns whether the event handler property should be set at the window level.
      Returns:
      true if the event handler should be set at window level
    • clearEventListenersContainer

      protected void clearEventListenersContainer()
      Clears the event listener container.