1

我在我的 Windows Phone 8 应用程序中使用 Webbrowser 控件。在这里,我正在调用一个 Java Script 函数,如下所示:

browser.InvokeScript("callMyJavaScriptFunction");

这个 Javascript 函数显示了一个警告框,在应用程序中,警告框变成了 MessageBox。我想隐藏来自 Javascript 的警报。

在这里,我无法更改 Javascript 中的代码。

如何在我的 xaml.cs 文件中隐藏来自 Javascript 的警报框?

4

1 回答 1

0

你可以劫持默认的window.alertJavaScript 函数,让它什么都不做。方法如下:

订阅控件的Navigated事件WebBrowser以确保您的页面在注入所需的脚本之前已完全加载:

browser.Navigated += browser_Navigated;

设置window.alert方法什么都不做:

void browser_Navigated(object sender, NavigationEventArgs e)
{
    string[] code = {"window.alert = function(message) { };"};
    browser.InvokeScript("eval", code);
}
于 2013-09-25T10:11:57.097 回答