cefSharp winform想能够自动登录 雷蛇网站. https://gold.razer.com/. 在登录框的时候,SendMouseClickEvent能点中 用户名 密码输入框,可是没有光标, 也就无法进行下一步的输入。请问什么原因?
private void ClickElement(string selector)
{
var sSel = $"$('{selector}').offset();";
Task<CefSharp.JavascriptResponse> t = browser.EvaluateScriptAsync(sSel);
t.Wait();
if (t.Result.Result != null)
{
var expandoDic = t.Result.Result as IDictionary<string, object>;
if ((null != expandoDic) && expandoDic.ContainsKey("left") && expandoDic.ContainsKey("top"))
{
var left = Convert.ToInt32(expandoDic["left"]) + 5;
var top = Convert.ToInt32(expandoDic["top"]) + 5;
browser.GetBrowser().GetHost().SendMouseClickEvent(left, top, MouseButtonType.Left, false, 1, CefEventFlags.LeftMouseButton);
Thread.Sleep(120);
browser.GetBrowser().GetHost().SendMouseClickEvent(left, top, MouseButtonType.Left, true, 1, CefEventFlags.LeftMouseButton);
}
}
}
private void button1_Click(object sender, EventArgs e)
{
//
browser.ExecuteScriptAsync(File.ReadAllText(@"jquery.min.js"));
ClickElement("#input-login-email");
}
已解决,更新CEF 解决
不太懂,还需要设置焦点?
我看参数都用的是CefEventFlags.None