如题,今天写了一个Html页面,包含Js方法若干,其中包括建立全局的js变量。即window.var
另外,Html中包含一个iframe子窗体,子窗体中的Js方法需要调用父窗体Js方法中所建立的那个全局变量
用PC端的浏览器打开主页,iframe可以获取到父窗体中的JS变量,但是用android的WebView打开这个Html页面,却始终无法获取到
尝试了很多种方式都不行,既然PC端浏览器能成功,我想是不是WebView本身的问题
所以在此求教,望大神指点迷津。
这是WebView对象已经添加的设置
webView.getSettings().setJavaScriptEnabled(true);
webView.getSettings().setBuiltInZoomControls(true);//手动缩放
webView.getSettings().setUseWideViewPort(true);//双击变大、变小和恢复
webView.getSettings().setDomStorageEnabled(true);
webView.getSettings().setJavaScriptCanOpenWindowsAutomatically(true);
webView.setWebViewClient(new WebViewClient(){
@Override
public boolean shouldOverrideUrlLoading(WebView view, String url) {
view.loadUrl(url);//根据传入参数再去加载新的网页
return true;//表示当前WebView可以处理打开新网页的请求,不用借助系统浏览器,去掉此方法后,点击链接则会自动用系统浏览器打开
}
});
webView.setWebChromeClient(new WebChromeClient(){
@Override
public boolean onJsAlert(WebView view, String url, String message,
JsResult result) {
return super.onJsAlert(view, url, message, result);
}
});
webView.loadUrl("file:///android_asset/index.html");