新しいWPFプロジェクトを作成し、Awesomium 1.6.3 WebControlを追加しました。Awesomiumを使用してJavaScript結果をC#に戻すには?
そして、私はMainWindow.xaml.cs
にこのコードを追加:
private void webControl1_Loaded(object sender, RoutedEventArgs e)
{
webControl1.LoadURL("https://www.google.com/");
}
private void webControl1_DomReady(object sender, EventArgs e)
{
var wc = new WebClient();
webControl1.ExecuteJavascript(jQuery);
webControl1.ExecuteJavascript(@"var __jq = jQuery.noConflict();");
webControl1.ExecuteJavascript(@"alert(__jq);");
using(var result = webControl1.ExecuteJavascriptWithResult(@"(function() { return 1; })();"))
{
MessageBox.Show(result.ToString());
}
//using (var result = webControl1.ExecuteJavascriptWithResult(@"(function() { return __jq('a'); })();"))
//{
// MessageBox.Show(result.ToString());
//}
}
をそして、それは "1" を警告した後、故障している "関数(B){...}"、今で私はそれについて考えますが、それは別の問題です。
ボトムコードのコメントを外すと、すぐに「1」が通知されてハングアップします。どうして?ページ上のリンクに関する情報はどのようにすることができますか?または、確実にC#に情報を渡しますか?または、C#でDOMにアクセスできますか?
編集:jQuery
は、jQuery 1.7コードを含む文字列です。次の行がハングアップする理由について
、それは非常に少なくとも説明と例外をスローした場合はいいだろう。私はまだ私が望むプロパティを選んで、それらを私が推測する文字列として返すことができると思います。ご協力いただきありがとうございます! – mpen
また、ユーザー作成オブジェクトとは何ですか?また、jQueryオブジェクトとの違いは何ですか? – mpen
バグです。すぐにnullが返されるはずです。私はto doリストに追加します。 – Adam