我想在WebView中单独加载Javascript和HTML。基本上,我希望为将要加载的任何HTML页面运行一个通用的Javascript。
这是你想要完成的一个例子:
/** returns a self-invoking JS function */
protected String getJavaScript(int sequence, String message) {
return "(function(){" +
...
"})();";
}
/** Script Execution Wrapper */
protected void evalScript(WebView webview, String script) {
webview.loadUrl("javascript:" + script);
}
来源:我的GitHub。
我想出了一种方法来做到这一点。
您可以使用单独的Javascript,然后使用WebViewClient的onPageFinished()中的WebView.evaluateJavascript()来评估该Javascript。
webView.setWebViewClient(new WebViewClient(){
@Override
public void onPageFinished(WebView view, String url) {
super.onPageFinished(view, url);
view.evaluateJavascript("javascript: " + readInputStream("javascript.js"), null);
}
});