![](/img/trans.png)
[英]Android - How to use Javascript in an Android WebView?
[英]Use javascript in an android webview
我正在使用从项目中的本地HTML读取的Web视图。 如果已完成加载html文件,则在HTML上使用一些javascript。 这是我的设置:
final WebView webview = (WebView)rootView.findViewById(R.id.webView);
webview.getSettings().setJavaScriptEnabled(true);
final String letter = "hello";
webview.setWebViewClient(new WebViewClient() {
@Override
public void onPageFinished(WebView view, String url)
{
webview.loadUrl("javascript:(function() { " +
"var text = 'HELLO';"+
"document.body.innerHTML = document.body.innerHTML.replace(/"+letter+"/g, '<font color=\"#FF0000\">text</font>');"+
"})()");
}
});
webview.loadUrl("file:///android_asset/2.html");
基本上,现在要做的就是将单词hello更改为红色单词文本。 但是我想要它做的就是按照我在javascript中声明的那样将单词更改为HELLO。 所以我的问题是如何以这种方式将变量合并到javascript代码中。 顺便说一句,我知道我可以在我声明字符串字母的地方以外修改delcare var文本。 但这只是我尝试做的一个小例子。
如果有人可以解释如何在webview.LoadUrl(下面的JavaScript代码中使用forloops),我将不胜感激。
var color = "#FF0000";
var text = "fem";
for (i = 0; i < 5; i++) {
text += "The number is " + i + "<br>";
}
document.body.innerHTML = document.body.innerHTML.replace(/with/g, '<font color="'+color+'">'+text+'</font>');
我如何将其放在webview.loadURL中。 请不要犹豫,询问是否不清楚。
您声明了文本,但没有使用它。
webview.loadUrl("javascript:(function() { " +
"var text = 'HELLO';"+
"document.body.innerHTML = document.body.innerHTML.replace(/"+letter+"/g, '<font color=\"#FF0000\">'+text+'</font>');"+
"})()");
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.