如何在WebView UWP中嵌入网站的一部分



是否可以在UWP中的WebView控件上仅嵌入页面内部的特定部分(即DIV)?

WebView不包含地址栏,因此只会显示您加载或可以从这些页面导航到的页面。如果您可以控制加载的内容,则只能显示您想要的页面。

如果您无法控制网站的HTML,则可以通过处理NavigationStarting事件来访问您不需要的页面,并取消导航,如果您不想显示您不希望显示的页面。<<<<<<<<

否,通过网站的"部分"假设,您的意思是页面中的部分。但是,正如马特(Matt)所说,如果您只想显示某个页面,则当然可以导航到相关的网页,然后控制您通过他的方法允许的导航链接。

如果您确实确实意味着页面中的一部分,则选项并不吸引人。从理论上讲,您可以使用HTTP请求拉下站点的HTML,然后解析以过滤您不需要的内容,在本地存储它,然后将该本地页面加载到WebView中。但是,我认为这会增加大量的开销,可能与JavaScript造成冲突,或者网站可能使用的任何其他东西。但是,嘿,也许如果它是一个非常有针对性的用例,您也许可以玩。

如果在您的方案中,尽管您还控制着所述网站,该应用程序正在访问,那么当应用程序请求em。

时,我将启用特定URL提供您网站的所需版本

注意100%确定,但是我可以对WebView控件打开的任何HTML内容的嵌入式外部部分进行打击。

var result = await this.webView.InvokeScriptAsync("eval", new[] { "document.documentElement.outerHTML;" });
string result = await this.webView.InvokeScriptAsync("eval", new [] {"document.getElementById('tablePrint').innerHTML = myTable;" }); 

通过Java脚本添加HTML内容。

希望会有所帮助

最新更新