如何从 Android Studio 的 Webview 中删除导航栏?

这是我到目前为止的代码。

webView.setWebViewClient(new WebViewClient() {

  //webview used to display a URL in the application

  @Override
  public void onPageFinished(WebView view, String url) {

    //webview load url and remove header from website

    webView.loadUrl("javascript:(function() { " +
      "document.getElementByTagName('header')[0].style.display='none';" +
      "document.getElementsById('header')[0].style.display='none'; " +
      "document.getElementsById('navbar navbar-default header-ontop')[0].style.display='none'; " +
      "})()");
  }
});
webView.loadUrl(url);

#1楼 票数:0

试试这个代码来删除你的导航栏,

webView.loadUrl("javascript:document.getElementsByClassName('navbar navbar-default header-ontop')[0].style.display='none'");

基本上设置显示“无”。

#2楼 票数:0

//使用Jsoup库我的问题将解决

  @SuppressLint("StaticFieldLeak")
    private class MyAsynTask extends AsyncTask<Void, Void, Document> {
        @Override
        protected Document doInBackground(Void... voids) {

            Document document = null;
            try {
                document = Jsoup.connect(url).get();
                document.getElementsByTag("header").remove();
                document.getElementsByTag("nav").remove();
                document.getElementsByTag("footer").remove();

            } catch (IOException e) {
                e.printStackTrace();
            }
            return document;
        }

        @Override
        protected void onPostExecute(final Document document) {
            super.onPostExecute(document);
            webView.loadDataWithBaseURL(url, document.toString(), "text/html", "utf-8", "");
            webView.getSettings().setCacheMode(WebSettings.LOAD_CACHE_ELSE_NETWORK);
            webView.setWebViewClient(new WebViewClient() {
                @Override
                public boolean shouldOverrideUrlLoading(WebView view, WebResourceRequest request) {
                    return true;
                }

                @Override
        public void onPageFinished(WebView view, String url) {
                    view.loadUrl("javascript:var footer = document.getElementById(\"footer\");" +
                            " footer.parentNode.removeChild(footer);" +
                            " var header = document.getElementById(\"header\"); " +
                            "header.parentNode.removeChild(header);");

                    super.onPageFinished(view, url);

            progressBar.setVisibility(View.GONE);
        }
            });

        }
    }

  ask by Vishal Raghav translate from so

未解决问题?本站智能推荐:

1回复

Android Studio向Webview显示单个元素

在Android Studio中,是否存在诸如仅从网站中检索单个元素并将其发送到Webview的事情? 让我们以https://accounts.google.com/为例。 如果我只想显示“创建帐户”按钮,那么如何删除除具有类“ RveJvd snByac”的创建按钮之外的所有元素,而
1回复

使用 android studio 在 webview 中显示谷歌表单

我正在尝试在WebView打开一个谷歌表单。 我用英语编写表单,但是当我将它嵌入我的应用程序时,页面以阿拉伯语(?)显示,文本从右到左。 为什么? 我的 xml 代码: 爪哇
1回复

Android Studio:Webview应用程序中的MediaPlayer控制器

我目前正在使用android studio创建一个webview应用。 我正在寻找最佳解决方案,让用户在通知栏(如Spotify等)中使用MediaPlayer Controller使用其他应用程序时暂停,播放,停止mp3文件。
2回复

(android studio) 无法更改 webview 中的“网页不可用”页面

我正在尝试在我的应用中显示我自己的“无互联网”页面。 我认为我的代码可能有问题,我一直在关注本教程,但出于某种原因,我的代码一直显示默认的“网页不可用”屏幕。
1回复

如何以编程方式接受 Android Studio 的 WebView 上的 cookie?

我制作了一个网络应用程序并希望以编程方式允许 cookie,因此来自网站的“允许 cookie”消息不会在我的应用程序中弹出。 到目前为止,我有这个: 但我仍然收到“允许 cookie”消息: 我想在不手动接受的情况下删除此消息,我该怎么做? 我尝试使用我在CookiesManager 中
2回复

来自 json 字符串的 webview loadurl() android

我想从我的 json 字符串加载 webview 的 url。 但我不明白我需要为此做什么。 我正在尝试使用getIntent().getExtras().getString("anime_img");加载 url 但它不起作用。 我该怎么做? 我有 url 的 json 数据。 在这里,我想在 w
1回复

Android Webview 中的密码管理器

如何在成功登录后从网站获取用户名(电子邮件)和密码以store local database ,并在打开同一网站时自动填写用户名和密码。
2回复

来自图库工作的文件选择器,但它不适用于android webview中的相机

我正在开发一个webview。 在附加文件时,文件选择器仅适用于库,但它不适用于相机。 当我点击附加文件时,应用程序会显示图库和相机的选项。 但是,当我选择相机时,什 我找到了几个几乎类似问题的其他来源。 但解决方案对我没有帮助。 在这里,在WebChromeClient中: