Javascript 在Android WebView中隐藏网页元素
我有一个android应用程序,它通过网络视图显示页面。但网页中有许多我不想显示的元素,这就是为什么我将它们隐藏如下:Javascript 在Android WebView中隐藏网页元素,javascript,android,webview,Javascript,Android,Webview,我有一个android应用程序,它通过网络视图显示页面。但网页中有许多我不想显示的元素,这就是为什么我将它们隐藏如下: webView.setWebViewClient(new WebViewClient(){ @Override public void onPageFinished(WebView view, String url) { super.onPageFinished(view, url);
webView.setWebViewClient(new WebViewClient(){
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
view.loadUrl ("javascript:(function() { "+"document.getElementsByClassName('td-header-wrap td-header-style-1 ')[0].style.display='none'; "+ "document.getElementsByClassName('td-fix-index ')[1].style.display='none'; "+"document.getElementsById('td_uid_1_5ff8cc46439eb ')[0].style.display='none'; "+"document.getElementsByClassName('td-fix-index ')[0].style.display='none'; "+"document.getElementsByClassName('tdm-mobile-full')[0].style.display='none'; "+"document.getElementsByClassName('td-fix-index ')[0].style.display='none'; "+"} )()");
}
是否可以使用javascript函数仅指示应显示的内容和而不是指示要隐藏的内容
我是否可以隐藏整个主体并仅显示一个div元素?我试过了,但不起作用
view.loadUrl ("javascript:(function() { "+"document.getElementsByClassName('body')[0].style.display='none'; "+ "document.getElementsByClassName('td-fix-index ')[0].style.display='block';"+"} )()");
试试这个。隐藏
主体
类,然后显示所需的类
view.loadUrl(“javascript:(function(){var p=document.getElementsByClassName('body')[0];p.style.visibility='hidden';p.style.width=0;p.style.height=0;p.style.padding=0;p.style.margin=0;document.getElementsByClassName('td-fix-index')[0]。style.visibility='visibility';)();”;
以下是JavaScript格式:
(函数(){
var p=document.getElementsByClassName('body')[0];
p、 style.visibility='hidden';
p、 样式宽度=0;
p、 高度=0;
p、 style.padding=0;
p、 样式.边距=0;
document.getElementsByClassName('td-fix-index')[0].style.visibility='visible';
)();
谢谢,但它不会隐藏正文。如果我使用它,它会隐藏正文(但不显示div元素):view.loadUrl(“javascript:(function(){“+”document.getElementsByClassName('body')[0]。style.display='none';“+”document.getElementsByClassName('td-fix-index')[0]。style.display='block';“+”)());是否需要完全看不到body元素?如果需要,样式是由标记还是由类?取决于您的回答,这可能会起作用。var show=document.getElementsByClassName('td-fix-index')[0]。outerHTML;var hidden=document.getElementsByClassName(“body”)[0];hidden.outerHTML=show;hidden.setAttribute(“class”,“different”);