是否可以在UWP中的WebView控件上仅嵌入页面内部的特定部分(即DIV)?
WebView不包含地址栏,因此只会显示您加载或可以从这些页面导航到的页面。如果您可以控制加载的内容,则只能显示您想要的页面。
如果您无法控制网站的HTML,则可以通过处理NavigationStarting
事件来访问您不需要的页面,并取消导航,如果您不想显示您不希望显示的页面。<<<<<<<<
否,通过网站的"部分"假设,您的意思是页面中的部分。但是,正如马特(Matt)所说,如果您只想显示某个页面,则当然可以导航到相关的网页,然后控制您通过他的方法允许的导航链接。
如果您确实确实意味着页面中的一部分,则选项并不吸引人。从理论上讲,您可以使用HTTP请求拉下站点的HTML,然后解析以过滤您不需要的内容,在本地存储它,然后将该本地页面加载到WebView中。但是,我认为这会增加大量的开销,可能与JavaScript造成冲突,或者网站可能使用的任何其他东西。但是,嘿,也许如果它是一个非常有针对性的用例,您也许可以玩。
如果在您的方案中,尽管您还控制着所述网站,该应用程序正在访问,那么当应用程序请求em。
注意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内容。
希望会有所帮助