【问题标题】:cefsharp how to check of all java script in page are completed?cefsharp如何检查页面中的所有java脚本是否完成?
【发布时间】:2018-11-05 19:04:33
【问题描述】:

我正在使用 CefSharp 浏览器和 c#。

我尝试登录页面,但是当我点击提交按钮时页面没有刷新,直到登录成功,如果没有,页面加载到服务器并获取消息密码错误

提交后如何检查页面中的所有java脚本?

//Initialize ChromiumWebBrowser
Chromium = new ChromiumWebBrowser("www.exapmle.com/login");

        this.panel2.Controls.Add(chrom);
        Chromium.Show();
        Chromium.Dock = DockStyle.Fill;

点击提交按钮 var cvbar = chrom.EvaluateScriptAsync("document.getElementById(\"login_u\");

我想在这里检查所有 javascript 是否已完成 像这样的

 if(javascripteCompleted()
 {
        var response = cvbar.Result;
        if (response.Success == true && response.Result.ToString() != "")
        {
          //  MessageBox.Show(response.Result.ToString());
        }
  }

谢谢

【问题讨论】:

  • 当 javascript 完成执行时,没有通用的衡量标准,每个网站的行为都不同。我不建议尝试返回DOM Elements,您应该只返回元素的值。过去,我不清楚您实际上要做什么。
  • 我尝试使用 Cefsharp 登录网站,问题是当您输入您的 id 和密码时,在服务器上执行查询的页面需要一点时间,然后显示“无效登录”或“成功登录”而没有页面刷新希望你理解谢谢
  • 仍然没有解释你想要做什么。

标签: c# cefsharp


【解决方案1】:

这是我所做的,仅在加载网页时才显示网页,直到那时才显示 SPINNER

private void Cefbrowser_LoadingStateChanged(object sender, LoadingStateChangedEventArgs e)
    {
        if (!e.IsLoading)
        {
            Application.Current.Dispatcher.Invoke(delegate
            {
                myspin.Visibility = Visibility.Collapsed;
            });

        }
    }

我的 XAML 代码

<StackPanel Name="panel">
            <Grid VerticalAlignment="Stretch" HorizontalAlignment="Stretch" MinHeight="700" Height="{Binding ElementName=panel,Path=ActualHeight}" Name="maingrid">
                <fa:ImageAwesome Name="myspin" Icon="Spinner" Spin="True" SpinDuration="4" Height="80" />
            </Grid>
        </StackPanel>

最初我放了一个 fontawesome 微调器,它显示当加载状态更改时页面正在加载 if (!e.IsLoading) 已满,然后微调器进入后台并像这样加载 webWINDOW:-

chrome.Load(URL);

**FYI Loading_State_Changed 在整个页面 html + javascript + css 加载时起作用**

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2015-07-25
    • 2013-08-29
    • 2020-07-01
    • 2011-10-18
    • 1970-01-01
    • 1970-01-01
    • 2017-03-21
    相关资源
    最近更新 更多