RemoteWebElement
class RemoteWebElement implements WebDriverElement, WebDriverLocatable (View source)
Represents an HTML element.
Properties
protected RemoteExecuteMethod | $executor | ||
protected string | $id | ||
protected FileDetector | $fileDetector | ||
protected bool | $isW3cCompliant |
Methods
Clear content editable or resettable element
Click this element.
Find the first WebDriverElement within this element using the given mechanism.
Find all WebDriverElements within this element using the given mechanism.
Get the value of the given attribute of the element.
Gets the value of a IDL JavaScript property of this element (for example innerHTML
, tagName
etc.).
Get the value of a given CSS property.
Get the location of element relative to the top-left corner of the page.
Try scrolling the element into the view port and return the location of element relative to the top-left corner of the page afterwards.
No description
Get the size of element.
Get the (lowercase) tag name of this element.
Get the visible (i.e. not hidden by CSS) innerText of this element, including sub-elements, without any leading or trailing whitespace.
Is this element displayed or not? This method avoids the problem of having to parse an element's "style" attribute.
Is the element currently enabled or not? This will generally return true for everything but disabled input elements.
Determine whether this element is selected or not.
Simulate typing into an element, which may set its value.
Set the fileDetector in order to let the RemoteWebElement to know that you are going to upload a file.
If this current element is a form, or an element within a form, then this will be submitted to the remote server.
Get the opaque ID of the element.
Take a screenshot of a specific element.
Get representation of an element's shadow root for accessing the shadow DOM of a web component.
Attempt to click on a child level element.
Return the WebDriverElement with $id
Upload a local file to the server
No description
Details
__construct(RemoteExecuteMethod $executor, string $id, bool $isW3cCompliant = false)
No description
WebDriverElement
clear()
Clear content editable or resettable element
WebDriverElement
click()
Click this element.
WebDriverElement
findElement(WebDriverBy $by)
Find the first WebDriverElement within this element using the given mechanism.
When using xpath be aware that webdriver follows standard conventions: a search prefixed with "//" will search the entire document from the root, not just the children (relative context) of this current node. Use ".//" to limit your search to the children of this element.
WebDriverElement[]
findElements(WebDriverBy $by)
Find all WebDriverElements within this element using the given mechanism.
When using xpath be aware that webdriver follows standard conventions: a search prefixed with "//" will search the entire document from the root, not just the children (relative context) of this current node. Use ".//" to limit your search to the children of this element.
string|null
getAttribute(string $attribute_name)
Get the value of the given attribute of the element.
Attribute is meant what is declared in the HTML markup of the element.
To read a value of a IDL "JavaScript" property (like innerHTML
), use getDomProperty()
method.
mixed|null
getDomProperty(string $propertyName)
Gets the value of a IDL JavaScript property of this element (for example innerHTML
, tagName
etc.).
string
getCSSValue(string $css_property_name)
Get the value of a given CSS property.
WebDriverPoint
getLocation()
Get the location of element relative to the top-left corner of the page.
WebDriverPoint
getLocationOnScreenOnceScrolledIntoView()
Try scrolling the element into the view port and return the location of element relative to the top-left corner of the page afterwards.
WebDriverCoordinates
getCoordinates()
No description
WebDriverDimension
getSize()
Get the size of element.
string
getTagName()
Get the (lowercase) tag name of this element.
string
getText()
Get the visible (i.e. not hidden by CSS) innerText of this element, including sub-elements, without any leading or trailing whitespace.
bool
isDisplayed()
Is this element displayed or not? This method avoids the problem of having to parse an element's "style" attribute.
bool
isEnabled()
Is the element currently enabled or not? This will generally return true for everything but disabled input elements.
bool
isSelected()
Determine whether this element is selected or not.
WebDriverElement
sendKeys(mixed $value)
Simulate typing into an element, which may set its value.
$this
setFileDetector(FileDetector $detector)
Set the fileDetector in order to let the RemoteWebElement to know that you are going to upload a file.
Basically, if you want WebDriver trying to send a file, set the fileDetector to be LocalFileDetector. Otherwise, keep it UselessFileDetector.
eg. $element->setFileDetector(new LocalFileDetector);
WebDriverElement
submit()
If this current element is a form, or an element within a form, then this will be submitted to the remote server.
string
getID()
Get the opaque ID of the element.
string
takeElementScreenshot(string $save_as = null)
Take a screenshot of a specific element.
bool
equals(WebDriverElement $other)
Test if two elements IDs refer to the same DOM element.
ShadowRoot
getShadowRoot()
Get representation of an element's shadow root for accessing the shadow DOM of a web component.
protected
clickChildElement(ElementNotInteractableException $originalException)
Attempt to click on a child level element.
This provides a workaround for geckodriver bug 653 whereby a link whose first element is a block-level element throws an ElementNotInteractableException could not scroll into view exception.
The workaround provided here attempts to click on a child node of the element. In case the first child is hidden, other elements are processed until we run out of elements.
protected RemoteWebElement
newElement(string $id)
Return the WebDriverElement with $id
protected string
upload(string $local_file)
Upload a local file to the server
protected string
createTemporaryZipArchive(string $fileToZip)
No description