如何在Android中的WebView中显示网站的一部分

时间:2017-03-21 18:48:33

标签: android android-studio android-webview jsoup getelementsbyclassname

我是Android Studio的新手,我想在我的Android应用程序WebView(而不是完整的站点)中显示该网站的一部分。 我尝试使用jsoup库来做但没有成功。 目前我正在尝试使用以下代码实现此目的,但仍然没有成功。请帮我做些什么。

webView1=(WebView)findViewById(R.id.webView1);
     webView1.getSettings().setJavaScriptEnabled(true);
    webView1.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageFinished(WebView view, String url)
        {
            url="http://https://mannudestiny.wordpress.com/";
            webView1.loadUrl("javascript:(function() { " + "document.getElementsByClassName('site-content').style.display='none'; " + "})()");
            webView1.loadUrl(url);
        }
    });
    //webView1.loadUrl("www.google.com");

2 个答案:

答案 0 :(得分:2)

我尝试了堆栈溢出的每一个答案,以实现我的问题的答案,但它们都没有为我工作,需要在代码中进行微小的更改才能实现这一点。 今天我得到了自己问题的答案。

要显示网站的某些部分,我们必须将代码更改为:

webView1.setWebViewClient(new WebViewClient() {

        @Override
        public void onPageFinished(WebView view, String url)
        {
            webView1.loadUrl("javascript:(function() { " +
                    "document.getElementById('footer').style.display='none'; " +
                    "document.getElementsByClassName('logo')[0].style.display='none'; " +
                    "})()");

        }
    });
    webView1.loadUrl("your url");

当您使用getElementById时,删除[0]并在使用getElementsByClassName时分别在ID或类名后面使用[0]。 此外,如果您想显示网站部分,请使用style.display='block',如果您想删除该部分,请使用style.display='none',希望我的回答和解释有用。

答案 1 :(得分:0)

我还尝试了堆栈溢出的每一个答案来实现答案,但它们都没有为我工作。

我得到了解决方案:



view.getSettings().setJavaScriptEnabled(true);
        view.setWebViewClient(new WebViewClient() {

            @Override
            public void onPageFinished(WebView view, String url)
            {
                view.loadUrl("javascript:(function() { " +
                        "var head = document.getElementsByClassName('header')[0].style.display='none'; " +
                        "var head = document.getElementsByClassName('blog-sidebar')[0].style.display='none'; " +
                        "var head = document.getElementsByClassName('footer-container')[0].style.display='none'; " +
                        "})()");

            }
        });
        view.loadUrl("your url");




添加(var head =)似乎是在webview中隐藏我的类。

我希望这会对某人有所帮助。

相关问题