在Android的web视图,我能够修改网页的DOM? [英] In Android Webview, am I able to modify a webpage's DOM?
本文介绍了在Android的web视图,我能够修改网页的DOM?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
假设我经过的WebView加载第三方URL。
Suppose I load a 3rd party URL through webview.
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
webview = (WebView) findViewById(R.id.webview);
webview.setWebViewClient(new HelloWebViewClient());
webview.getSettings().setJavaScriptEnabled(true);
webview.setWebChromeClient(new MyWebChromeClient());
webview.loadUrl("http://ebay.com");
}
是否有可能对我来说,的东西注入到这个web视图,以我自己的替代eBay的标志?
Is it possible for me to inject something into this WebView to replace the ebay logo with my own?
推荐答案
要扩大CommonsWare的正确答案:
To expand on CommonsWare's correct answer:
WebView webview = new WebView();
webview.setWebViewClient(new WebClient());
webView.getSettings().setJavaScriptEnabled(true);
webview.loadUrl("stackoverflow.com");
然后在Web客户端:
then in WebClient:
public class WebClient extends WebViewClient {
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);
return true;
}
@Override
public void onPageFinished(WebView view, String url)
{
// Obvious next step is: document.forms[0].submit()
view.loadUrl("javascript:document.forms[0].q.value='[android]'");
}
}
在简单地说,你等待页面加载。然后你使用loadURL(JavaScript的:在这里你的javascript])。
In a nutshell, you wait for the page to load. Then you loadUrl("javascript:[your javascript here]").
这篇关于在Android的web视图,我能够修改网页的DOM?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文