我在Windows Phone 8应用中使用Web浏览器控件。在这里,我调用Java Script函数,如下所示:
browser.InvokeScript("callMyJavaScriptFunction");
这个Javascript函数显示一个警告框,在警报框中变为MessageBox的应用程序中。我想隐藏来自Javascript的警报。
在这里,我无法更改Javascript中的代码。
如何在我的xaml.cs文件中隐藏来自Javascript的警告框?
答案 0 :(得分:0)
您可以劫持默认的window.alert
JavaScript函数并使其无效。方法如下:
订阅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);
}