我可以将JavaScript和CSS注入Xamarin Form WebView吗?

时间:2018-11-21 00:51:13

标签: webview xamarin.forms android-webview

我的Xamarin Form WebView加载这样的外部网页,

<WebView VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" Source="<SOME_URL_HERE>" />

我需要隐藏注入JavaScript或CSS的网页菜单。在通过应用程序加载网页时,我还需要隐藏网页的一些不必要的元素。

达到此要求的最佳方法是什么?如果还有JavaScript或CSS以外的其他方式,那也是可以接受的。

1 个答案:

答案 0 :(得分:2)

WebView提供了一种EvaluateJavaScriptAsync方法(请参见here),可用于执行JS。

例如,您可以订阅Navigated事件(请参阅here

<WebView VerticalOptions="FillAndExpand" HorizontalOptions="FillAndExpand" Source="<SOME_URL_HERE>" Navigated="WebViewOnNavigated" />

WebView导航到后,您可以从后面的代码中执行JS

public async void WebViewOnNavigated(object sender, WebNavigatedEventArgs args)
{
    var webView = sender as WebView; // ommitting the null check, since nobody else will call this method
    await webView.EvaluateJavaScriptAsync("<Your JS goes here>");
}