Class HtmlElement
- All Implemented Interfaces:
Serializable
,Cloneable
,Element
,Node
- Direct Known Subclasses:
BaseFrameElement
,HtmlAbbreviated
,HtmlAcronym
,HtmlAddress
,HtmlAnchor
,HtmlArea
,HtmlArticle
,HtmlAside
,HtmlBackgroundSound
,HtmlBase
,HtmlBaseFont
,HtmlBidirectionalIsolation
,HtmlBidirectionalOverride
,HtmlBig
,HtmlBlockQuote
,HtmlBody
,HtmlBold
,HtmlBreak
,HtmlButton
,HtmlCanvas
,HtmlCaption
,HtmlCenter
,HtmlCitation
,HtmlCode
,HtmlData
,HtmlDataList
,HtmlDefinition
,HtmlDefinitionDescription
,HtmlDefinitionList
,HtmlDefinitionTerm
,HtmlDeletedText
,HtmlDetails
,HtmlDialog
,HtmlDirectory
,HtmlDivision
,HtmlEmbed
,HtmlEmphasis
,HtmlExample
,HtmlFieldSet
,HtmlFigure
,HtmlFigureCaption
,HtmlFont
,HtmlFooter
,HtmlForm
,HtmlFrameSet
,HtmlHead
,HtmlHeader
,HtmlHeading1
,HtmlHeading2
,HtmlHeading3
,HtmlHeading4
,HtmlHeading5
,HtmlHeading6
,HtmlHorizontalRule
,HtmlHtml
,HtmlImage
,HtmlInlineQuotation
,HtmlInput
,HtmlInsertedText
,HtmlItalic
,HtmlKeyboard
,HtmlLabel
,HtmlLayer
,HtmlLegend
,HtmlLink
,HtmlListing
,HtmlListItem
,HtmlMain
,HtmlMap
,HtmlMark
,HtmlMarquee
,HtmlMedia
,HtmlMenu
,HtmlMeta
,HtmlNav
,HtmlNoBreak
,HtmlNoEmbed
,HtmlNoFrames
,HtmlNoLayer
,HtmlNoScript
,HtmlObject
,HtmlOption
,HtmlOptionGroup
,HtmlOrderedList
,HtmlOutput
,HtmlParagraph
,HtmlParameter
,HtmlPicture
,HtmlPlainText
,HtmlPreformattedText
,HtmlProgress
,HtmlRb
,HtmlRp
,HtmlRt
,HtmlRtc
,HtmlRuby
,HtmlS
,HtmlSample
,HtmlScript
,HtmlSection
,HtmlSelect
,HtmlSlot
,HtmlSmall
,HtmlSource
,HtmlSpan
,HtmlStrike
,HtmlStrong
,HtmlStyle
,HtmlSubscript
,HtmlSummary
,HtmlSuperscript
,HtmlSvg
,HtmlTable
,HtmlTableCell
,HtmlTableColumn
,HtmlTableColumnGroup
,HtmlTableRow
,HtmlTeletype
,HtmlTemplate
,HtmlTextArea
,HtmlTime
,HtmlTitle
,HtmlTrack
,HtmlUnderlined
,HtmlUnknownElement
,HtmlUnorderedList
,HtmlVariable
,HtmlWordBreak
,TableRowGroup
- See Also:
-
Nested Class Summary
Nested ClassesModifier and TypeClassDescriptionstatic enum
Enum for the different display styles.Nested classes/interfaces inherited from class org.htmlunit.html.DomElement
DomElement.ChildElementsIterator
Nested classes/interfaces inherited from class org.htmlunit.html.DomNode
DomNode.ChildIterator, DomNode.DescendantDomElementsIterator, DomNode.DescendantDomNodesIterator, DomNode.DescendantElementsIterator<T extends DomNode>, DomNode.DescendantHtmlElementsIterator
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected static final String
Constant 'checked'.protected static final String
Constant 'hidden'.protected static final String
Constant 'required'.static final Short
Constant indicating that a tab index value is out of bounds (less than0
or greater than32767
).Fields inherited from class org.htmlunit.html.DomElement
ATTRIBUTE_NOT_DEFINED, ATTRIBUTE_VALUE_EMPTY, ID_ATTRIBUTE, NAME_ATTRIBUTE, SRC_ATTRIBUTE, TYPE_ATTRIBUTE, VALUE_ATTRIBUTE
Fields inherited from class org.htmlunit.html.DomNode
PROPERTY_ELEMENT, READY_STATE_COMPLETE, READY_STATE_INTERACTIVE, READY_STATE_LOADED, READY_STATE_LOADING, READY_STATE_UNINITIALIZED
Fields inherited from interface org.w3c.dom.Node
ATTRIBUTE_NODE, CDATA_SECTION_NODE, COMMENT_NODE, DOCUMENT_FRAGMENT_NODE, DOCUMENT_NODE, DOCUMENT_POSITION_CONTAINED_BY, DOCUMENT_POSITION_CONTAINS, DOCUMENT_POSITION_DISCONNECTED, DOCUMENT_POSITION_FOLLOWING, DOCUMENT_POSITION_IMPLEMENTATION_SPECIFIC, DOCUMENT_POSITION_PRECEDING, DOCUMENT_TYPE_NODE, ELEMENT_NODE, ENTITY_NODE, ENTITY_REFERENCE_NODE, NOTATION_NODE, PROCESSING_INSTRUCTION_NODE, TEXT_NODE
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected boolean
acceptChar
(char c) Indicates if the provided character can by "typed" in the element.void
Adds an HtmlAttributeChangeListener to the listener list.final HtmlElement
appendChildIfNoneExists
(String tagName) Appends a child element to this HTML element with the specified tag name if this HTML element does not already have a child with that tag name.protected void
checkChildHierarchy
(Node childNode) Check for insertion errors for a new child node.cloneNode
(boolean deep) protected void
detach()
INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Detach this node from all relationships with other nodes.protected void
doType
(char c, boolean lastType) Performs the effective type action, called after the keyPress event and before the keyUp event.protected void
doType
(int keyCode, boolean lastType) Performs the effective type action, called after the keyPress event and before the keyUp event.protected void
Support for reporting HTML attribute changes.protected void
Support for reporting HTML attribute changes.protected void
Support for reporting HTML attribute changes.Returns the canonical XPath expression which identifies this node, for instance"/html/body/table[3]/tbody/tr[5]/td[2]/span/a[3]"
.INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Returns the default display style.final <E extends HtmlElement>
List<E> getElementsByAttribute
(String elementName, String attributeName, String attributeValue) Returns all elements which are descendants of this element and match the specified search criteria.getEnclosingElement
(String tagName) Returns the first element with the specified tag name that is an ancestor to this element, ornull
if no such element is found.Returns the form which contains this element, ornull
if this element is not inside of a form.Returns the form which contains this element.final String
Returns the value of the attributelang
.final String
Returns the value of the attributeonclick
.final String
Returns the value of the attributeondblclick
.final <E extends HtmlElement>
EgetOneHtmlElementByAttribute
(String elementName, String attributeName, String attributeValue) Searches for an element based on the specified criteria, returning the first element which matches said criteria.final String
Returns the value of the attributeonkeydown
.final String
Returns the value of the attributeonkeypress
.final String
Returns the value of the attributeonkeyup
.final String
Returns the value of the attributeonmousedown
.final String
Returns the value of the attributeonmousemove
.final String
Returns the value of the attributeonmouseout
.final String
Returns the value of the attributeonmouseover
.final String
Returns the value of the attributeonmouseup
.protected final String
Helper for src retrieval and normalization.Returns this element's tab index, if it has one.final String
Returns the value of the attributedir
.final String
Returns the value of the attributexml:lang
.boolean
handles
(org.htmlunit.javascript.host.event.Event event) Indicates if the provided event can be applied to this node.final boolean
hasEventHandlers
(String eventName) INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Returnstrue
if this element has any JavaScript functions that need to be executed when the specified event occurs.boolean
Returns whether theALT
is currently pressed.protected boolean
Indicates if the attribute names are case sensitive.boolean
Returns whether theCTRL
is currently pressed.boolean
Returnstrue
if this node is displayed and can be visible to the user (ignoring screen size, scrolling limitations, color, font-size, or overlapping nodes).boolean
isHidden()
boolean
boolean
protected boolean
Returns whether this element supports therequired
constraint.protected boolean
Returns whether theSHIFT
is currently pressed.protected boolean
Returnstrue
if clicking Enter (ASCII 10, or '\n') should submit the enclosed form (if any).boolean
isValid()
Returns whether this element satisfies all form validation constraints set.protected static void
notifyAttributeChangeListeners
(HtmlAttributeChangeEvent event, HtmlElement element, String oldAttributeValue, boolean notifyMutationObservers) Recursively notifies allHtmlAttributeChangeListener
s.void
removeAttribute
(String attributeName) Removes an attribute specified by name from this element.final void
removeChild
(String tagName, int i) Removes thei
th child element with the specified tag name from all relationships, if possible.void
Removes an HtmlAttributeChangeListener from the listener list.setAttributeNode
(Attr attribute) Sets the specified attribute.protected void
setAttributeNS
(String namespaceURI, String qualifiedName, String attributeValue, boolean notifyAttributeChangeListeners, boolean notifyMutationObservers) Sets the value of the attribute specified by namespace and qualified name.void
setHidden
(boolean hidden) Sets thehidden
property.void
Sets thehidden
property.void
setOwningForm
(HtmlForm form) INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Allows the parser to connect to a form that is not a parent of this due to malformed HTML codevoid
setRequired
(boolean required) Sets therequired
attribute.type
(char c) Simulates typing the specified character while this element has focus, returning the page contained by this element's window after typing.type
(int keyCode) Simulates typing the specified key code while this element has focus, returning the page contained by this element's window after typing.void
Simulates typing the specified text while this element has focus.Simulates typing the specifiedKeyboard
while this element has focus, returning the page contained by this element's window after typing.protected void
Called fromDoTypeProcessor
.Methods inherited from class org.htmlunit.html.DomElement
blur, click, click, click, click, click, dblClick, dblClick, doClickFireChangeEvent, doClickFireClickEvent, doClickStateUpdate, fireEvent, fireEvent, focus, getAttribute, getAttributeDirect, getAttributeNode, getAttributeNodeNS, getAttributeNS, getAttributes, getAttributesMap, getChildElementCount, getChildElements, getElementsByTagName, getElementsByTagNameNS, getEventTargetElement, getFirstElementChild, getId, getLastElementChild, getNodeType, getSchemaTypeInfo, getStaticElementsByTagName, getStyleElement, getStyleElementCaseInSensitive, getStyleMap, getTagName, hasAttribute, hasAttributeNS, hasAttributes, isDisabledElementAndDisabled, isEmptyXmlTagExpanded, isMouseOver, isStateUpdateFirst, matches, mouseDown, mouseDown, mouseMove, mouseMove, mouseOut, mouseOut, mouseOver, mouseOver, mouseUp, mouseUp, preventDefault, printOpeningTagContentAsXml, printXml, propagateClickStateUpdateToParent, removeAttributeNode, removeAttributeNS, removeFocus, removeStyleAttribute, replaceStyleAttribute, rightClick, rightClick, setAttribute, setAttributeNodeNS, setAttributeNS, setDefaults, setId, setIdAttribute, setIdAttributeNode, setIdAttributeNS, setInnerHtml, setNodeValue, toString, writeStyleToElement
Methods inherited from class org.htmlunit.html.DomNamespaceNode
getLocalName, getLowercaseName, getNamespaceURI, getPrefix, getQualifiedName, processImportNode, setPrefix
Methods inherited from class org.htmlunit.html.DomNode
addCharacterDataChangeListener, addDomChangeListener, appendChild, asNormalizedText, asXml, basicRemove, closest, compareDocumentPosition, fireCharacterDataChanged, fireNodeAdded, fireNodeDeleted, getAncestors, getBaseURI, getByXPath, getByXPath, getChildNodes, getChildren, getDescendants, getDomElementDescendants, getEndColumnNumber, getEndLineNumber, getFeature, getFirstByXPath, getFirstByXPath, getFirstChild, getHtmlElementDescendants, getHtmlPageOrNull, getIndex, getLastChild, getNextElementSibling, getNextSibling, getNodeValue, getOwnerDocument, getPage, getParentNode, getPreviousElementSibling, getPreviousSibling, getReadyState, getScriptableObject, getSelectorList, getStartColumnNumber, getStartLineNumber, getTextContent, getUserData, getVisibleText, hasChildNodes, hasFeature, insertBefore, insertBefore, isAncestorOf, isAncestorOfAny, isAttachedToPage, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, mayBeDisplayed, normalize, notifyIncorrectness, onAddedToDocumentFragment, onAddedToPage, onAllChildrenAddedToPage, parseHtmlSnippet, printChildrenAsXml, querySelector, querySelectorAll, quietlyRemoveAndMoveChildrenTo, remove, removeAllChildren, removeCharacterDataChangeListener, removeChild, removeDomChangeListener, replace, replaceChild, setEndLocation, setParentNode, setReadyState, setScriptableObject, setStartLocation, setTextContent, setUserData
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods inherited from interface org.w3c.dom.Node
appendChild, compareDocumentPosition, getBaseURI, getChildNodes, getFeature, getFirstChild, getLastChild, getLocalName, getNamespaceURI, getNextSibling, getNodeValue, getOwnerDocument, getParentNode, getPrefix, getPreviousSibling, getTextContent, getUserData, hasChildNodes, insertBefore, isDefaultNamespace, isEqualNode, isSameNode, isSupported, lookupNamespaceURI, lookupPrefix, normalize, removeChild, replaceChild, setPrefix, setTextContent, setUserData
-
Field Details
-
TAB_INDEX_OUT_OF_BOUNDS
Constant indicating that a tab index value is out of bounds (less than0
or greater than32767
).- See Also:
-
ATTRIBUTE_REQUIRED
Constant 'required'.- See Also:
-
ATTRIBUTE_CHECKED
Constant 'checked'.- See Also:
-
ATTRIBUTE_HIDDEN
Constant 'hidden'.- See Also:
-
-
Constructor Details
-
HtmlElement
Creates an instance.- Parameters:
qualifiedName
- the qualified name of the element type to instantiatepage
- the page that contains this elementattributes
- a map ready initialized with the attributes for this element, ornull
. The map will be stored as is, not copied.
-
HtmlElement
protected HtmlElement(String namespaceURI, String qualifiedName, SgmlPage page, Map<String, DomAttr> attributes) Creates an instance of a DOM element that can have a namespace.- Parameters:
namespaceURI
- the URI that identifies an XML namespacequalifiedName
- the qualified name of the element type to instantiatepage
- the page that contains this elementattributes
- a map ready initialized with the attributes for this element, ornull
. The map will be stored as is, not copied.
-
-
Method Details
-
setAttributeNS
protected void setAttributeNS(String namespaceURI, String qualifiedName, String attributeValue, boolean notifyAttributeChangeListeners, boolean notifyMutationObservers) Sets the value of the attribute specified by namespace and qualified name.- Overrides:
setAttributeNS
in classDomElement
- Parameters:
namespaceURI
- the URI that identifies an XML namespacequalifiedName
- the qualified name (prefix:local) of the attributeattributeValue
- the value of the attributenotifyAttributeChangeListeners
- to notify the associatedHtmlAttributeChangeListener
snotifyMutationObservers
- to notifyMutationObserver
s or not
-
notifyAttributeChangeListeners
protected static void notifyAttributeChangeListeners(HtmlAttributeChangeEvent event, HtmlElement element, String oldAttributeValue, boolean notifyMutationObservers) Recursively notifies allHtmlAttributeChangeListener
s.- Parameters:
event
- the eventelement
- the elementoldAttributeValue
- the old attribute valuenotifyMutationObservers
- whether to notifyMutationObserver
s or not
-
setAttributeNode
Sets the specified attribute. This method may be overridden by subclasses which are interested in specific attribute value changes, but such methods must invokesuper.setAttributeNode()
, and should consider the value of thecloning
parameter when deciding whether or not to execute custom logic.- Specified by:
setAttributeNode
in interfaceElement
- Overrides:
setAttributeNode
in classDomElement
- Parameters:
attribute
- the attribute to set- Returns:
-
removeAttribute
Removes an attribute specified by name from this element.- Specified by:
removeAttribute
in interfaceElement
- Overrides:
removeAttribute
in classDomElement
- Parameters:
attributeName
- the attribute attributeName
-
fireHtmlAttributeAdded
Support for reporting HTML attribute changes. This method can be called when an attribute has been added and it will send the appropriateHtmlAttributeChangeEvent
to any registeredHtmlAttributeChangeListener
s.Note that this method recursively calls this element's parent's
fireHtmlAttributeAdded(HtmlAttributeChangeEvent)
method.- Parameters:
event
- the event- See Also:
-
fireHtmlAttributeReplaced
Support for reporting HTML attribute changes. This method can be called when an attribute has been replaced and it will send the appropriateHtmlAttributeChangeEvent
to any registeredHtmlAttributeChangeListener
s.Note that this method recursively calls this element's parent's
fireHtmlAttributeReplaced(HtmlAttributeChangeEvent)
method.- Parameters:
event
- the event- See Also:
-
fireHtmlAttributeRemoved
Support for reporting HTML attribute changes. This method can be called when an attribute has been removed and it will send the appropriateHtmlAttributeChangeEvent
to any registeredHtmlAttributeChangeListener
s.Note that this method recursively calls this element's parent's
fireHtmlAttributeRemoved(HtmlAttributeChangeEvent)
method.- Parameters:
event
- the event- See Also:
-
getNodeName
Description copied from class:DomElement
- Specified by:
getNodeName
in interfaceNode
- Overrides:
getNodeName
in classDomElement
- Returns:
- the same value as returned by
DomElement.getTagName()
-
getTabIndex
Returns this element's tab index, if it has one. If the tab index is outside of the valid range (less than0
or greater than32767
), this method returnsTAB_INDEX_OUT_OF_BOUNDS
. If this element does not have a tab index, or its tab index is otherwise invalid, this method returnsnull
.- Returns:
- this element's tab index
-
getEnclosingElement
Returns the first element with the specified tag name that is an ancestor to this element, ornull
if no such element is found.- Parameters:
tagName
- the name of the tag searched (case insensitive)- Returns:
- the first element with the specified tag name that is an ancestor to this element
-
getEnclosingForm
Returns the form which contains this element, ornull
if this element is not inside of a form.- Returns:
- the form which contains this element
-
getEnclosingFormOrDie
Returns the form which contains this element. If this element is not inside a form, this method throws anIllegalStateException
.- Returns:
- the form which contains this element
-
type
Simulates typing the specified text while this element has focus. Note that for some elements, typing '\n' submits the enclosed form.- Parameters:
text
- the text you with to simulate typing- Throws:
IOException
- If an IO error occurs
-
type
Simulates typing the specified character while this element has focus, returning the page contained by this element's window after typing. Note that it may or may not be the same as the original page, depending on the JavaScript event handlers, etc. Note also that for some elements, typing'\n'
submits the enclosed form.- Parameters:
c
- the character you wish to simulate typing- Returns:
- the page that occupies this window after typing
- Throws:
IOException
- if an IO error occurs
-
type
Simulates typing the specified key code while this element has focus, returning the page contained by this element's window after typing. Note that it may or may not be the same as the original page, depending on the JavaScript event handlers, etc. Note also that for some elements, typingXXXXXXXXXXX
submits the enclosed form.An example of predefined values is
KeyboardEvent.DOM_VK_PAGE_DOWN
.- Parameters:
keyCode
- the key code to simulate typing- Returns:
- the page that occupies this window after typing
-
type
Simulates typing the specifiedKeyboard
while this element has focus, returning the page contained by this element's window after typing. Note that it may or may not be the same as the original page, depending on the JavaScript event handlers, etc. Note also that for some elements, typingXXXXXXXXXXX
submits the enclosed form.- Parameters:
keyboard
- the keyboard- Returns:
- the page that occupies this window after typing
- Throws:
IOException
- if an IO error occurs
-
doType
protected void doType(char c, boolean lastType) Performs the effective type action, called after the keyPress event and before the keyUp event.- Parameters:
c
- the character you with to simulate typinglastType
- is this the last character to type
-
doType
protected void doType(int keyCode, boolean lastType) Performs the effective type action, called after the keyPress event and before the keyUp event.An example of predefined values is
KeyboardEvent.DOM_VK_PAGE_DOWN
.- Parameters:
keyCode
- the key code wish to simulate typinglastType
- is this the last to type
-
typeDone
Called fromDoTypeProcessor
.- Parameters:
newValue
- the new valuenotifyAttributeChangeListeners
- to notify the associatedHtmlAttributeChangeListener
s
-
acceptChar
protected boolean acceptChar(char c) Indicates if the provided character can by "typed" in the element.- Parameters:
c
- the character- Returns:
true
if it is accepted
-
isSubmittableByEnter
protected boolean isSubmittableByEnter()Returnstrue
if clicking Enter (ASCII 10, or '\n') should submit the enclosed form (if any). The default implementation returnsfalse
.- Returns:
true
if clicking Enter should submit the enclosed form (if any)
-
getOneHtmlElementByAttribute
public final <E extends HtmlElement> E getOneHtmlElementByAttribute(String elementName, String attributeName, String attributeValue) throws ElementNotFoundException Searches for an element based on the specified criteria, returning the first element which matches said criteria. Only elements which are descendants of this element are included in the search.- Type Parameters:
E
- the sub-element type- Parameters:
elementName
- the name of the element to search forattributeName
- the name of the attribute to search forattributeValue
- the value of the attribute to search for- Returns:
- the first element which matches the specified search criteria
- Throws:
ElementNotFoundException
- if no element matches the specified search criteria
-
getElementsByAttribute
public final <E extends HtmlElement> List<E> getElementsByAttribute(String elementName, String attributeName, String attributeValue) Returns all elements which are descendants of this element and match the specified search criteria.- Type Parameters:
E
- the sub-element type- Parameters:
elementName
- the name of the element to search forattributeName
- the name of the attribute to search forattributeValue
- the value of the attribute to search for- Returns:
- all elements which are descendants of this element and match the specified search criteria
-
appendChildIfNoneExists
Appends a child element to this HTML element with the specified tag name if this HTML element does not already have a child with that tag name. Returns the appended child element, or the first existent child element with the specified tag name if none was appended.- Parameters:
tagName
- the tag name of the child to append- Returns:
- the added child, or the first existing child if none was added
-
removeChild
Removes thei
th child element with the specified tag name from all relationships, if possible.- Parameters:
tagName
- the tag name of the child to removei
- the index of the child to remove
-
hasEventHandlers
INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Returnstrue
if this element has any JavaScript functions that need to be executed when the specified event occurs.- Parameters:
eventName
- the name of the event, such as "onclick" or "onblur", etc- Returns:
- true if an event handler has been defined otherwise false
-
addHtmlAttributeChangeListener
Adds an HtmlAttributeChangeListener to the listener list. The listener is registered for all attributes of this HtmlElement, as well as descendant elements.- Parameters:
listener
- the attribute change listener to be added- See Also:
-
removeHtmlAttributeChangeListener
Removes an HtmlAttributeChangeListener from the listener list. This method should be used to remove HtmlAttributeChangeListener that were registered for all attributes of this HtmlElement, as well as descendant elements.- Parameters:
listener
- the attribute change listener to be removed- See Also:
-
checkChildHierarchy
Check for insertion errors for a new child node. This is overridden by derived classes to enforce which types of children are allowed.- Overrides:
checkChildHierarchy
in classDomNode
- Parameters:
childNode
- the new child node that is being inserted below this node- Throws:
DOMException
- HIERARCHY_REQUEST_ERR: Raised if this node is of a type that does not allow children of the type of the newChild node, or if the node to insert is one of this node's ancestors or this node itself, or if this node is of type Document and the DOM application attempts to insert a second DocumentType or Element node. WRONG_DOCUMENT_ERR: Raised if newChild was created from a different document than the one that created this node.
-
setOwningForm
INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Allows the parser to connect to a form that is not a parent of this due to malformed HTML code- Parameters:
form
- the owning form
-
isAttributeCaseSensitive
protected boolean isAttributeCaseSensitive()Indicates if the attribute names are case sensitive.- Overrides:
isAttributeCaseSensitive
in classDomElement
- Returns:
false
-
getLangAttribute
Returns the value of the attributelang
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
lang
or an empty string if that attribute isn't defined
-
getXmlLangAttribute
Returns the value of the attributexml:lang
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
xml:lang
or an empty string if that attribute isn't defined
-
getTextDirectionAttribute
Returns the value of the attributedir
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
dir
or an empty string if that attribute isn't defined
-
getOnClickAttribute
Returns the value of the attributeonclick
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onclick
or an empty string if that attribute isn't defined
-
getOnDblClickAttribute
Returns the value of the attributeondblclick
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
ondblclick
or an empty string if that attribute isn't defined
-
getOnMouseDownAttribute
Returns the value of the attributeonmousedown
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onmousedown
or an empty string if that attribute isn't defined
-
getOnMouseUpAttribute
Returns the value of the attributeonmouseup
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onmouseup
or an empty string if that attribute isn't defined
-
getOnMouseOverAttribute
Returns the value of the attributeonmouseover
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onmouseover
or an empty string if that attribute isn't defined
-
getOnMouseMoveAttribute
Returns the value of the attributeonmousemove
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onmousemove
or an empty string if that attribute isn't defined
-
getOnMouseOutAttribute
Returns the value of the attributeonmouseout
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onmouseout
or an empty string if that attribute isn't defined
-
getOnKeyPressAttribute
Returns the value of the attributeonkeypress
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onkeypress
or an empty string if that attribute isn't defined
-
getOnKeyDownAttribute
Returns the value of the attributeonkeydown
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onkeydown
or an empty string if that attribute isn't defined
-
getOnKeyUpAttribute
Returns the value of the attributeonkeyup
. Refer to the HTML 4.01 documentation for details on the use of this attribute.- Returns:
- the value of the attribute
onkeyup
or an empty string if that attribute isn't defined
-
getCanonicalXPath
Returns the canonical XPath expression which identifies this node, for instance
"/html/body/table[3]/tbody/tr[5]/td[2]/span/a[3]"
.WARNING: This sort of automated XPath expression is often quite bad at identifying a node, as it is highly sensitive to changes in the DOM tree.
- Overrides:
getCanonicalXPath
in classDomNode
- Returns:
- the canonical XPath expression which identifies this node
- See Also:
-
isHidden
public boolean isHidden()- Returns:
- true if the hidden attribute is set.
-
setHidden
Sets thehidden
property.- Parameters:
hidden
- thehidden
property
-
setHidden
public void setHidden(boolean hidden) Sets thehidden
property.- Parameters:
hidden
- thehidden
property
-
isDisplayed
public boolean isDisplayed()Returns
true
if this node is displayed and can be visible to the user (ignoring screen size, scrolling limitations, color, font-size, or overlapping nodes).NOTE: If CSS is
Overwritten to support the hidden attribute (html5).disabled
, this method does not take this element's style into consideration!- Overrides:
isDisplayed
in classDomNode
- Returns:
true
if the node is visible to the user,false
otherwise- See Also:
-
getDefaultStyleDisplay
INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Returns the default display style.- Returns:
- the default display style
-
getSrcAttributeNormalized
Helper for src retrieval and normalization.- Returns:
- the value of the attribute
src
with all line breaks removed or an empty string if that attribute isn't defined.
-
detach
protected void detach()INTERNAL API - SUBJECT TO CHANGE AT ANY TIME - USE AT YOUR OWN RISK.
Detach this node from all relationships with other nodes. This is the first step of a move. -
handles
public boolean handles(org.htmlunit.javascript.host.event.Event event) Indicates if the provided event can be applied to this node. Overwrite this. -
isShiftPressed
protected boolean isShiftPressed()Returns whether theSHIFT
is currently pressed.- Returns:
- whether the
SHIFT
is currently pressed
-
isCtrlPressed
public boolean isCtrlPressed()Returns whether theCTRL
is currently pressed.- Returns:
- whether the
CTRL
is currently pressed
-
isAltPressed
public boolean isAltPressed()Returns whether theALT
is currently pressed.- Returns:
- whether the
ALT
is currently pressed
-
isValid
public boolean isValid()Returns whether this element satisfies all form validation constraints set.- Returns:
- whether this element satisfies all form validation constraints set
-
isRequiredSupported
protected boolean isRequiredSupported()Returns whether this element supports therequired
constraint.- Returns:
- whether this element supports the
required
constraint
-
isRequired
public boolean isRequired()- Returns:
- the true if the required attribute is set
-
isOptional
public boolean isOptional()- Returns:
- the true if the required attribute is supported and set
-
setRequired
public void setRequired(boolean required) Sets therequired
attribute.- Parameters:
required
- the new attribute value
-
cloneNode
- Specified by:
cloneNode
in interfaceNode
- Overrides:
cloneNode
in classDomElement
-