Struct chromiumoxide::element::Element [−][src]
Represents a DOM Element.
Fields
remote_object_id: RemoteObjectId
The Unique object identifier
backend_node_id: BackendNodeId
Identifier of the backend node.
node_id: NodeId
The identifier of the node this element represents.
Implementations
impl Element
[src]
pub async fn find_element(&self, selector: impl Into<String>) -> Result<Self>
[src]
Returns the first element in the document which matches the given CSS selector.
pub async fn find_elements(
&self,
selector: impl Into<String>
) -> Result<Vec<Element>>
[src]
&self,
selector: impl Into<String>
) -> Result<Vec<Element>>
Return all Element
s in the document that match the given selector
pub async fn bounding_box(&self) -> Result<BoundingBox>
[src]
Returns the bounding box of the element (relative to the main frame)
pub async fn clickable_point(&self) -> Result<Point>
[src]
Returns the best Point
of this node to execute a click on.
pub async fn call_js_fn(
&self,
function_declaration: impl Into<String>,
await_promise: bool
) -> Result<CallFunctionOnReturns>
[src]
&self,
function_declaration: impl Into<String>,
await_promise: bool
) -> Result<CallFunctionOnReturns>
Submits a javascript function to the page and returns the evaluated result
Example get the element as JSON object
let js_fn = "function() { return this; }"; let element_json = element.call_js_fn(js_fn, false).await?;
Execute an async javascript function
let js_fn = "async function() { return this; }"; let element_json = element.call_js_fn(js_fn, true).await?;
pub async fn json_value(&self) -> Result<Value>
[src]
Returns a JSON representation of this element.
pub async fn focus(&self) -> Result<&Self>
[src]
Calls focus on the element.
pub async fn hover(&self) -> Result<&Self>
[src]
Scrolls the element into view and uses a mouse event to move the mouse over the center of this element.
pub async fn scroll_into_view(&self) -> Result<&Self>
[src]
Scrolls the element into view.
Fails if the element’s node is not a HTML element or is detached from the document
pub async fn click(&self) -> Result<&Self>
[src]
This focuses the element by click on it
Bear in mind that if click()
triggers a navigation this element may be
not exist anymore.
pub async fn type_str(&self, input: impl AsRef<str>) -> Result<&Self>
[src]
Type the input
Example type text into an input element
let element = page.find_element("input#searchInput").await?; element.click().await?.type_str("this goes into the input field").await?;
pub async fn press_key(&self, key: impl AsRef<str>) -> Result<&Self>
[src]
Presses the key.
Example type text into an input element and hit enter
let element = page.find_element("input#searchInput").await?; element.click().await?.type_str("this goes into the input field").await? .press_key("Enter").await?;
pub async fn description(&self) -> Result<Node>
[src]
The description of the element’s node
pub async fn attributes(&self) -> Result<Vec<String>>
[src]
Attributes of the Element
node in the form of flat array `[name1,
value1, name2, value2]
pub async fn attribute(
&self,
attribute: impl AsRef<str>
) -> Result<Option<String>>
[src]
&self,
attribute: impl AsRef<str>
) -> Result<Option<String>>
Returns the value of the element’s attribute
pub async fn iter_attributes(
&self
) -> Result<impl Stream<Item = (String, Result<Option<String>>)> + '_>
[src]
&self
) -> Result<impl Stream<Item = (String, Result<Option<String>>)> + '_>
A Stream
over all attributes and their values
pub async fn inner_text(&self) -> Result<Option<String>>
[src]
The inner text of this element.
pub async fn inner_html(&self) -> Result<Option<String>>
[src]
The inner HTML of this element.
pub async fn outer_html(&self) -> Result<Option<String>>
[src]
The outer HTML of this element.
pub async fn string_property(
&self,
property: impl AsRef<str>
) -> Result<Option<String>>
[src]
&self,
property: impl AsRef<str>
) -> Result<Option<String>>
Returns the string property of the element.
If the property is an empty String, None
is returned.
pub async fn property(&self, property: impl AsRef<str>) -> Result<Option<Value>>
[src]
Returns the javascript property
of this element where property
is
the name of the requested property of this element.
See also Element::inner_html
.
pub async fn properties(&self) -> Result<HashMap<String, PropertyDescriptor>>
[src]
Returns a map with all PropertyDescriptor
s of this element keyed by
their names
pub async fn screenshot(
&self,
format: CaptureScreenshotFormat
) -> Result<Vec<u8>>
[src]
&self,
format: CaptureScreenshotFormat
) -> Result<Vec<u8>>
Scrolls the element into and takes a screenshot of it
pub async fn save_screenshot(
&self,
format: CaptureScreenshotFormat,
output: impl AsRef<Path>
) -> Result<Vec<u8>>
[src]
&self,
format: CaptureScreenshotFormat,
output: impl AsRef<Path>
) -> Result<Vec<u8>>
Save a screenshot of the element and write it to output
Trait Implementations
Auto Trait Implementations
impl !RefUnwindSafe for Element
impl Send for Element
impl Sync for Element
impl Unpin for Element
impl !UnwindSafe for Element
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
pub fn borrow_mut(&mut self) -> &mut T
[src]
impl<T> From<T> for T
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> Same<T> for T
type Output = T
Should always be Self
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
pub fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,
type Error = <U as TryFrom<T>>::Error
The type returned in the event of a conversion error.
pub fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>
[src]
impl<V, T> VZip<V> for T where
V: MultiLane<T>,
V: MultiLane<T>,