从webview android加载的url中删除div标记
我正在使用web.loadUrl(url);,将url加载到webview中;。现在我想在url加载完成后删除部分正文内容 url中的数据如下所示:从webview android加载的url中删除div标记,android,webview,android-webview,Android,Webview,Android Webview,我正在使用web.loadUrl(url);,将url加载到webview中;。现在我想在url加载完成后删除部分正文内容 url中的数据如下所示: <html> <body> <div class="header" data-role="header" data-theme="a"> <a data-icon="back" class="header-icon" data-iconpos="notext" href="mymob-web-mobil
<html>
<body>
<div class="header" data-role="header" data-theme="a">
<a data-icon="back" class="header-icon" data-iconpos="notext" href="mymob-web-mobile/restricted/menu.xhtml" data-ajax="false"> <span>Back</span> </a>
<!--Title-->
<h1>???help.main.title???</h1>
</div>
<div id="well">Hello World</div>
<body>
</html>
?帮助。主要。标题???
你好,世界
我想删除url中的此部分
<div class="header" data-role="header" data-theme="a">
<a data-icon="back" class="header-icon" data-iconpos="notext" href="mymob-web-mobile/restricted/menu.xhtml" data-ajax="false"> <span>Back</span> </a>
<!--Title-->
<h1>???help.main.title???</h1>
</div>
?帮助。主要。标题???
经过一些研究,我得出了这个解决方案:
web= (WebView)findViewById(R.id.web);
web.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url)
{
web.loadUrl("javascript:var con = document.getElementByTagName('<div class=\"header\" data-role=\"header\" data-theme=\"a\"> '); " +
"con.style.display = 'none'; ");
}
});
web.clearCache(true);
web.clearHistory();
web.getSettings().setJavaScriptEnabled(true);
web.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
web.loadUrl(Constant.URL_AIDE, headers);
web=(WebView)findviewbyd(R.id.web);
setWebViewClient(新的WebViewClient(){
@凌驾
公共void onPageFinished(WebView视图,字符串url)
{
loadUrl(“javascript:var con=document.getElementByTagName(“”);”+
“con.style.display='none';”;
}
});
clearCache(true);
clearHistory();
web.getSettings().setJavaScriptEnabled(true);
web.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
loadUrl(Constant.URL\u-AIDE,标题);
但是没有删除div元素
一个夏天是,除掉div
<div class="header" data-role="header" data-theme="a">
<a data-icon="back" class="header-icon" data-iconpos="notext" href="mymob-web-mobile/restricted/menu.xhtml" data-ajax="false"> <span>Back</span> </a>
<!--Title-->
<h1>???help.main.title???</h1>
</div>
?帮助。主要。标题???
预期结果
<html>
<body>
<div id="well">Hello World</div>
<body>
</html>
你好,世界
你知道你的JavaScript不正确吗。除了
getElementById
其他getElementByTagName…
函数返回节点列表外,没有任何东西是getElementByTagName
。应该是这样的:
[].slice.call(document.getElementsByClassName("header")).forEach(function(element) {element.style.display = 'none';});
您可以使用GetElementsByCassName()访问该div。这是我的解决方案,请尝试
web.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url){
web.loadUrl("javascript:document.getElementsByClassName('header')[0].style.display=\"none\";");
}
})
创建css文件并放入资产文件夹中,通过应用css文件加载urlpath@BirajZalavadia你们如何做到这一点?在这种情况下,我应该在哪里定义网页的url?