我难以实现从Webview调用js的功能。
我到目前为止所做的
我使用oncreate
方法从webView.load(url)
加载了一个网页。
onPageFinished
方法中我在先前加载的网页中称为js函数。
现在是问题了
让我认为js对Webview做了一些ui更改,然后js完成了我想调用另一个js的任务。
所以我自然而然地想到了在“ 2”中提到的第一个之后调用该js。
但是程序流不是顺序的,即我从onPageFinished
一对一地调用了这两个js。
像这样
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
wv1.post(new Runnable() {
@Override
public void run() {
System.out.println("here1111");
wv1.loadUrl("javascript:loadPage('" + filename + "',"+scrollval+",'"+pagepath+"');");
}
});
wv1.post(new Runnable() {
@Override
public void run() {
System.out.println("before calling search "+searchStringGlobal+" >>>><<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<");
wv1.loadUrl("javascript:highlightSearchText('"+searchStringGlobal+"');");
}
});
}
这是我的代码。该代码用于加载页面并突出显示传递的文本。页面正在加载文本未突出显示。
通过简单地首先在oncreate中加载数据并随后调用突出显示功能,我验证了问题不在于突出显示功能。
请帮助我,我的逻辑/方法是否正确或只是一个小问题?