当meta IE = edge时从c ++ / delphi访问javascript

时间:2019-03-01 08:22:26

标签: javascript delphi webbrowser-control c++builder meta-tags

我有一个带有WebBrowser控件的应用程序(exe)。我可以从C ++或Delphi调用Javascript。但是我需要访问网页上的pseudoStyle,例如:

document.getElementById("..").pseudoStyle("before","background-color",color);

因为IE11不支持pseudoStyle,所以我必须添加一个meta:

<meta http-equiv="X-UA-Compatible" content="IE=edge"/>

但是后来我无法从应用程序访问Javascript。然后 GetIDsOfNames 返回-1,而使用IE11则正确返回ID。

简单测试

使用WebBrowser控件创建可执行文件。创建一个包含javascript "function Test() { alert("here");}"的HTML文件。现在导航到该文件。它有效,您可以从exe调用此“测试”。

现在将<meta http-equiv="X-UA-Compatible" content="IE=edge"/>插入HTML文件。这样一来,您将无法再调用Javascript“测试”功能。

问题

当HTML头包含以下内容时,是否可以从包含WebBrowser控件的.exe调用Javascript函数;如果是,则如何?

<meta http-equiv="X-UA-Compatible" content="IE=edge"/>

0 个答案:

没有答案
相关问题