Sta*_*ies 5 c# xaml microsoft-metro windows-8
我在我的应用程序中有一个Webview,我想截取任何点击并打开IE中的链接,而不是在应用程序中的Webview内.
我只能看到NavigationFailed和LoadingComplete事件,没有关于我可以拦截的"即将导航"事件.
似乎没有任何方法可以捕获任何导航事件.但是,您可以使用window.external.notify()拦截在JavaScript中调用的脚本事件
假设页面是您自己托管的内容,则可以替换
<a href="http://www.lightwoodgames.com">LINK</a>
Run Code Online (Sandbox Code Playgroud)
同
<a href="javascript:window.external.notify('http://www.lightwoodgames.com')">LINK</a>
Run Code Online (Sandbox Code Playgroud)
然后在您的项目中,您将要添加
webview.ScriptNotify += webview_ScriptNotify;
webview.AllowedScriptNotifyUris = WebView.AnyScriptNotifyUri;
protected async void webview_ScriptNotify(object sender, NotifyEventArgs e)
{
await Windows.System.Launcher.LaunchUriAsync(new Uri(e.Value));
}
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
4812 次 |
最近记录: |