C# 如何等待javascript在GeckofxC中运行#
这是行不通的。如果浏览器运行缓慢或其他情况,它有时会起作用。但我不能让它一直工作 当EvaluateScript返回时,javascript应该已经运行了。(据我所知,这是一个同步呼叫)-Purpahs发生了其他事情。(就像调用EvaluateScript时文档还没有准备好/完成加载。@Tom是的。但我使用的是document_completed事件处理程序,此javascript在document_completed事件后很长时间都在工作。我还使用geckobrowser.isAjaxBusy检查它是否忙。不幸的是,document_completed事件对此不起作用,因为e等待文档完全加载,而不是等待运行JS之类的东西,这是一个事件。你知道吗?@NistharKPCC# 如何等待javascript在GeckofxC中运行#,c#,gecko,geckofx,C#,Gecko,Geckofx,这是行不通的。如果浏览器运行缓慢或其他情况,它有时会起作用。但我不能让它一直工作 当EvaluateScript返回时,javascript应该已经运行了。(据我所知,这是一个同步呼叫)-Purpahs发生了其他事情。(就像调用EvaluateScript时文档还没有准备好/完成加载。@Tom是的。但我使用的是document_completed事件处理程序,此javascript在document_completed事件后很长时间都在工作。我还使用geckobrowser.isAjaxBusy
using (Gecko.AutoJSContext js = new AutoJSContext(geckoWebBrowser1.Window.JSContext))
{
js.EvaluateScript(@"
function send(){
document.getElementsByClassName('channel-msg-button')[0].click();
var content = document.getElementsByClassName('compose-message')[0];
content.value = '"+message+@"';
document.getElementsByClassName('yt-dialog-send')[0].click();
return content.value;
};
send();
", out outstring);
Thread.Sleep(10000);