阻止在 IE 浏览器中打开 webview
Posted
技术标签:
【中文标题】阻止在 IE 浏览器中打开 webview【英文标题】:Prevent webview from opening in IE Browser 【发布时间】:2014-06-07 13:36:19 【问题描述】:我有一个与这个问题相反的问题 Open link in IE on Windows store metro apps
我有一个 Windows 商店应用程序,用户登录到网页并导航到不同的页面,所有页面都是 https。但是某些页面似乎在 IE 浏览器中打开,导致 IE 浏览器再次向用户查询登录名和密码,因为它是新浏览器。
我不希望它在 IE 浏览器中打开,但所有链接在应用程序的 webview 实例中保持打开状态。
这是我的代码片段(teamScreen 全局声明的私有字符串)
string teamScreen = "https://mysite.com/Login.aspx?" + "username=" + logInUserIdString + "&password=" + logInPasswordString + "&mobile=1&offsetHours=" + timezone;
protected override void OnNavigatedTo(NavigationEventArgs e)
Uri targetUri = new Uri(teamScreen);
webView1.Navigate(targetUri);
如何阻止 webview 中的链接从外部打开?
谢谢
【问题讨论】:
导致IE打开的链接是否设置为target="_blank"
?
感谢wiredpraire。与 target=_blank 上的服务器小伙交谈,当 Windows 商店应用程序访问该网站时,他将删除它。不影响 android 或 iPhone 版本。一旦我把它排序,我会发布答案。再次感谢
【参考方案1】:
WiredPrairie 直面问题。
服务器小伙子在页面中有一些新链接,其 target="_black" 会强制在浏览器中创建一个新选项卡。因此假设 Windows Store App webview 不允许选项卡,它强制网页打开设备上的 IE 浏览器。
一旦删除,问题就消失了。
在 iPhone/iPad 或 Android 版本的应用程序中没有问题,但不确定原因。相同的后端代码,无论哪种方式都是固定的。
【讨论】:
以上是关于阻止在 IE 浏览器中打开 webview的主要内容,如果未能解决你的问题,请参考以下文章