Class NamedNodeMap

java.lang.Object
org.htmlunit.corejs.javascript.ScriptableObject
org.htmlunit.javascript.HtmlUnitScriptable
org.htmlunit.javascript.host.NamedNodeMap
All Implemented Interfaces:
Serializable, Cloneable, org.htmlunit.corejs.javascript.ConstProperties, org.htmlunit.corejs.javascript.debug.DebuggableObject, org.htmlunit.corejs.javascript.Scriptable, org.htmlunit.corejs.javascript.SymbolScriptable

public class NamedNodeMap extends HtmlUnitScriptable
A collection of nodes that can be accessed by name. String comparisons in this class are case-insensitive when used with an HtmlElement, but case-sensitive when used with a DomElement.
See Also:
  • Nested Class Summary

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

    org.htmlunit.corejs.javascript.ScriptableObject.KeyComparator
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    private final NamedNodeMap
     

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

    CONST, DONTENUM, EMPTY, PERMANENT, READONLY, UNINITIALIZED_CONST

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

    NOT_FOUND
  • Constructor Summary

    Constructors
    Constructor
    Description
    We need default constructors to build the prototype instance.
    Creates a new named node map for the specified element.
  • Method Summary

    Modifier and Type
    Method
    Description
    final Object
    get(int index, org.htmlunit.corejs.javascript.Scriptable start)
    Returns the element at the specified index, or Scriptable.NOT_FOUND if the index is invalid.
    get(String name, org.htmlunit.corejs.javascript.Scriptable start)
    Gets a named property from the object.
    int
    Returns the number of attributes in this named node map.
    Gets the specified attribute.
    getNamedItemNS(String namespaceURI, String localName)
    Gets the specified attribute.
    INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
    Gets the specified attribute but does not handle the synthetic class attribute for IE.
    boolean
    has(int index, org.htmlunit.corejs.javascript.Scriptable start)
    item(int index)
    Returns the item at the specified index.
    org.htmlunit.corejs.javascript.Scriptable
     
    void
    JavaScript constructor.
    void
    Removes the specified attribute.
    removeNamedItemNS(String namespaceURI, String localName)
    Removes the specified attribute.
    void
    Sets the specified attribute.
    void
    Sets the specified attribute.

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

    applyDescriptorToAttributeBitset, associateValue, avoidObjectDetection, buildDataDescriptor, callMethod, callMethod, checkPropertyChange, checkPropertyDefinition, defineClass, defineClass, defineClass, defineConst, defineConstProperty, defineFunctionProperties, defineOwnProperties, defineOwnProperty, defineOwnProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, defineProperty, delete, delete, delete, deleteProperty, deleteProperty, deleteProperty, ensureScriptable, ensureScriptableObject, ensureSymbolScriptable, get, get, getAllIds, getArrayPrototype, getAssociatedValue, getAttributes, getAttributes, getAttributes, getAttributes, getAttributes, getClassPrototype, getDefaultValue, getExternalArrayData, getExternalArrayLength, getFunctionPrototype, getGeneratorFunctionPrototype, getGetterOrSetter, getGetterOrSetter, getIds, getObjectPrototype, getOwnPropertyDescriptor, getParentScope, getProperty, getProperty, getProperty, getPropertyIds, getPrototype, getTopLevelScope, getTopScopeValue, getTypedProperty, getTypedProperty, getTypeOf, has, has, hasProperty, hasProperty, hasProperty, isAccessorDescriptor, isConst, isDataDescriptor, isEmpty, isExtensible, isFalse, isGenericDescriptor, isGetterOrSetter, isSealed, isTrue, preventExtensions, put, put, putConst, putConstProperty, putProperty, putProperty, putProperty, querySlot, redefineProperty, sameValue, sealObject, setAttributes, setAttributes, setAttributes, setAttributes, setAttributes, setCommonDescriptorProperties, setExternalArrayData, setGetterOrSetter, setPrototype, size

    Methods inherited from class java.lang.Object

    equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • NamedNodeMap

      public NamedNodeMap()
      We need default constructors to build the prototype instance.
    • NamedNodeMap

      public NamedNodeMap(DomElement element)
      Creates a new named node map for the specified element.
      Parameters:
      element - the owning element
  • Method Details

    • jsConstructor

      public void jsConstructor()
      JavaScript constructor.
    • get

      public final Object get(int index, org.htmlunit.corejs.javascript.Scriptable start)
      Returns the element at the specified index, or Scriptable.NOT_FOUND if the index is invalid.

      Specified by:
      get in interface org.htmlunit.corejs.javascript.Scriptable
      Overrides:
      get in class org.htmlunit.corejs.javascript.ScriptableObject
    • get

      public Object get(String name, org.htmlunit.corejs.javascript.Scriptable start)
      Gets a named property from the object. Normally HtmlUnit objects don't need to overwrite this method as properties are defined on the prototypes from the XML configuration. In some cases where "content" of object has priority compared to the properties consider using utility HtmlUnitScriptable.getWithPreemption(String).
      Specified by:
      get in interface org.htmlunit.corejs.javascript.Scriptable
      Overrides:
      get in class HtmlUnitScriptable
    • getNamedItemWithoutSytheticClassAttr

      public HtmlUnitScriptable getNamedItemWithoutSytheticClassAttr(String name)
      INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
      Gets the specified attribute but does not handle the synthetic class attribute for IE.
      Parameters:
      name - attribute name
      Returns:
      the attribute node, null if the attribute is not defined
      See Also:
    • getNamedItem

      public HtmlUnitScriptable getNamedItem(String name)
      Gets the specified attribute.
      Parameters:
      name - attribute name
      Returns:
      the attribute node, null if the attribute is not defined
    • getNamedItemNS

      public Node getNamedItemNS(String namespaceURI, String localName)
      Gets the specified attribute.
      Parameters:
      namespaceURI - the namespace URI of the node to retrieve.
      localName - the local name of the node to retrieve.
      Returns:
      the attribute node, null if the attribute is not defined
    • setNamedItem

      public void setNamedItem(Node node)
      Sets the specified attribute.
      Parameters:
      node - the attribute
    • setNamedItemNS

      public void setNamedItemNS(Node node)
      Sets the specified attribute.
      Parameters:
      node - the attribute
    • removeNamedItem

      public void removeNamedItem(String name)
      Removes the specified attribute.
      Parameters:
      name - the name of the item to remove
    • removeNamedItemNS

      public Attr removeNamedItemNS(String namespaceURI, String localName)
      Removes the specified attribute.
      Parameters:
      namespaceURI - the namespace URI of the node to retrieve.
      localName - the local name of the node to retrieve.
      Returns:
      the attribute node, null if the attribute is not defined
    • item

      public HtmlUnitScriptable item(int index)
      Returns the item at the specified index.
      Parameters:
      index - the index
      Returns:
      the item at the specified index
    • getLength

      public int getLength()
      Returns the number of attributes in this named node map.
      Returns:
      the number of attributes in this named node map
    • has

      public boolean has(int index, org.htmlunit.corejs.javascript.Scriptable start)
      Specified by:
      has in interface org.htmlunit.corejs.javascript.Scriptable
      Overrides:
      has in class HtmlUnitScriptable
    • iterator

      public org.htmlunit.corejs.javascript.Scriptable iterator()