0

以下は、IEに表示されるHTMLを変更するために使用するコードです。ただし、常に例外がスローされます-outerHTMLプロパティを設定できませんでした。この操作のターゲット要素が無効です。アウターHTMLを設定することはできませんか?

protected void AlterContent(ref HTMLDocument docInput, HTMLDocument docAlteredOutPut)
{
    try
    {
        if (docInput.body.tagName.ToLower() == "body" && docAlteredOutPut.body.innerHTML != null)
        {
            docInput.documentElement.outerHTML = docAlteredOutPut.documentElement.outerHTML;
        }
    }
    catch
    {
    }
}

ありがとう。

4

1 に答える 1

1

<body>要素のhtmlを置き換えることはできません。する必要はありません、これはうまくいきます:

public partial class Form1 : Form {
    public Form1() {
        InitializeComponent();
        webBrowser1.Url = new Uri("http://stackoverflow.com");
        webBrowser1.DocumentCompleted += webBrowser1_DocumentCompleted;
    }
    void webBrowser1_DocumentCompleted(object sender, WebBrowserDocumentCompletedEventArgs e) {
        var body = webBrowser1.Document.Body;
        body.InnerHtml = "pwned";
    }
}
于 2011-05-08T12:45:23.490 に答える