2

私は WPF WebBrowser コントロールを使用しており、いくつかの JavaScript 関数にアクセスしたいのですが、問題があります。

InvokeScript を使用して browser.InvokeScript("alert", "Hello");q を実行できますが、ID または TAG で要素を取得する方法と、その要素を javascript var に割り当てる方法を教えてください。

例: Javascript: var elements = document.getElementsByTagName("embed"); 要素[0].doSomething();

C#: どうやって?

私はすべてを試しましたが、何もうまくいきませんでした。誰でも私を助けることができます:(

4

1 に答える 1

1

かなり遅い答えですが、他の誰かがそれを必要とする場合:

ダイレクト C#: http://msdn.microsoft.com/en-us/library/system.windows.forms.htmldocument.getelementsbytagname.aspx

HtmlElementCollection elems = webBrowser1.Document.GetElementsByTagName("embed");
foreach (HtmlElement elem in elems)
    {
        elem.InvokeMember("doSomething");
    }

別の方法: http://msdn.microsoft.com/en-us/library/a0746166

基本的に、JS で関数を作成する必要があります。

var myCustomFunc = function(tagName) {
  var elements = document.getElementsByTagName(tagName); elements[0].doSomething();
}

そして、C#から呼び出します

webBrowser1.Document.InvokeScript("myCustomFunc ", new String[] { "embed" });

変数「tagName」は「embed」に置き換えられます

于 2012-06-19T12:10:45.313 に答える