3

我有一个在 Internet Explorer 中使用上下文菜单扩展调用的 VB.NET 类。

代码可以访问页面的对象模型,读取数据不成问题。这是测试函数的代码...它更改状态栏文本(OK),打印页面 HTML(OK),通过添加文本更改 HTML 并再次打印页面 HTML(OK,在第二个 pop-我添加的文本在 HTML 中)

但 Internet Explorer 窗口不显示它。我在哪里做错了?

Public Sub CallingTest(ByRef Source As Object)
    Dim D As mshtml.HTMLDocument = Source.document
    Source.status = "Working..."
    Dim H As String = D.documentElement.innerHTML()
    MsgBox(H)
    D.documentElement.insertAdjacentText("beforeEnd", "ThisIsATest")
    H = D.documentElement.outerHTML()
    MsgBox(H)
    Source.status = ""
End Sub

该函数在 JavaScript 中是这样调用的:

<script>
    var EB = new ActiveXObject("MyObject.MyClass");
    EB.CallingTest(external.menuArguments);
</script>
4

2 回答 2

0

我不认为亚历克斯是对的,还有别的问题。

当我尝试做类似的事情时, insertBefore 对我不起作用,但 appendChild 工作得很好,所以添加一个元素是可能的。

我在 Javascript 中工作,但我不认为这会有所作为。

于 2009-04-28T21:01:34.537 回答
0

据我了解,为了使用 insertAdjacentText 或任何其他编辑方法,文档对象应处于设计模式。在设计模式下,您可以自由编辑文档,用户也可以。查看网站了解更多详情

于 2008-11-05T20:28:59.803 回答