我用webview提取了一个网页,但是我想隐藏div类名和divId中的一些div。有没有办法做到这一点?链接在正文中,我能够从第二个div calss中隐藏第一个div类,而其他div id不会隐藏。
webView = new WebView(this);
webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("myUrl");
webView.getSettings().setLoadWithOverviewMode(true);
webView.getSettings().setUseWideViewPort(true);
setContentView(webView);
webView.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url) {
webView.loadUrl("javascript:document.getElementsByClassName('header-top')[0].style.display=\"none\";");
webView.loadUrl("javascript:document.getElementsByClassName('inchoo-socialconnect-login')[0].style.display=\"none\";");
webView.loadUrl("javascript:(function() { " +
"document.getElementById('before-footer')[0].style.display='none';})()");
webView.loadUrl("javascript:(function() { " +
"document.getElementById('footer')[0].style.display='none';})()");
}
});
}
答案 0 :(得分:0)
当你调用getElementById时,它返回一个元素,而不是像getElementsByClassName这样的数组。
因此,尝试从Id调用中删除[0]并查看它是否有帮助。
例如。
webView.loadUrl("javascript:(function() { " +
"document.getElementById('before-footer').style.display='none';})()");