如何在 Xamarin 表单中隐藏 WebView 显示的网页元素
How to hide elements of webpage shown by WebView in Xamarin forms
我有一个网站,现在想制作 iOS/Android APP 来显示我网站的内容。我打算使用 Xamarin.Forms 和 WebView。问题是,APP不需要像网站那样展示,所以我想隐藏网页的一些元素。例如,有一个id为“test”的元素,我想用EvaluateJavaScriptAsync隐藏它
我试过了
WebView WebSiteView = new WebView();
WebSiteView.Source = WebUrl;
WebSiteView.EvaluateJavaScriptAsync("document.getElementById('test').style.display = 'none';");
但是没用。有人可以告诉我这是否可行以及如何?谢谢
当您直接调用方法 EvaluateJavaScriptAsync
时, WebView
还没有
完全初始化了。
所以你可以在Navigated
事件中调用JS代码
WebSiteView.Navigated += (o, s) => {
WebSiteView.EvaluateJavaScriptAsync("document.getElementById('test').style.display = 'none';");
};
我有一个网站,现在想制作 iOS/Android APP 来显示我网站的内容。我打算使用 Xamarin.Forms 和 WebView。问题是,APP不需要像网站那样展示,所以我想隐藏网页的一些元素。例如,有一个id为“test”的元素,我想用EvaluateJavaScriptAsync隐藏它
我试过了
WebView WebSiteView = new WebView();
WebSiteView.Source = WebUrl;
WebSiteView.EvaluateJavaScriptAsync("document.getElementById('test').style.display = 'none';");
但是没用。有人可以告诉我这是否可行以及如何?谢谢
当您直接调用方法 EvaluateJavaScriptAsync
时, WebView
还没有
完全初始化了。
所以你可以在Navigated
事件中调用JS代码WebSiteView.Navigated += (o, s) => {
WebSiteView.EvaluateJavaScriptAsync("document.getElementById('test').style.display = 'none';");
};