INNER CODE UNIT · Rust

wait_element

keon/browser-control · src/actions.rs:229

pub async fn wait_element(
    c: &mut Cdp,
    selector: &str,
    seconds: u64,
    visible: bool,
) -> Result<bool> {
    let check = if visible {
        format!(
            "(()=>{{const e=document.querySelector({});if(!e)return false;\
             if(typeof e.checkVisibility==='function')return e.checkVisibility({{checkOpacity:true,checkVisibilityCSS:true}});\
             const s=getComputedStyle(e),r=e.getBoundingClientRect();return r.width>0&&r.height>0&&s.display!=='none'&&s.visibility!=='hidden'&&s.opacity!=='0'}})()",
            serde_json::to_string(selector)?
        )
    } else {
        format!(
            "!!document.querySelector({})",
            serde_json::to_string(selector)?
        )

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…