3

C# winforms アプリで Awesomium を使用して、Web ページ内の div をクリックしています。

次のスクリプトは、Google Chrome に直接入力すると問題なく動作します。

javascript: document.getElementById('ac_play').click();

しかし、次のいずれかを使用して awesomium で実行しようとすると:

webControl1.ExecuteJavascript("document.getElementById('ac_play').click();");

またはこれ:

webControl1.LoadURL("javascript: document.getElementById('ac_play').click();");

動いていない。Awesomium は「div クリック」をサポートしていますか? それとも、うまくいかない原因が他にあるのでしょうか?

私もコードを実行しようとしました:

  • LoadCompleted イベント (ページが完全に読み込まれたことを確認するため)
  • 「addressBox1」(ネイティブ awesomium「アドレスバー」コントロール)にスクリプトを手動で入力する

いつものように - 何も機能していません。

編集:

GeckoFX で同じ JavaScript をテストしましたが、そこでも機能しません。回避策はありますか?

EDIT2

Standart WebBrowser コントロールは、スクリプトを完全に実行します! (IE5程度を使用していますが..そのため、Awesomiumソリューションが機能することを望んでいます)。

PS webcontrol で動作していましたが、現在は動作していません ;( どうすればリセットできますか? PPS IE でキャッシュを削除しましたが、標準の WebBrowser を使用するのは非常に信頼できません..

4

2 に答える 2

1

asでDocumentReadyイベントを待つ必要があることに注意してください(そうではありません-Awesomiumはまだ準備が整っていないためです)DocumentReadyStateLoadedReady

private void WebControl_DocumentReady(object sender, DocumentReadyEventArgs e)
{
    if (e.ReadyState != DocumentReadyState.Loaded) return;
    //Here ExecuteJavascript should work
}
于 2015-09-04T09:35:52.573 に答える