pei6964012
pei6964012
2015-10-21 11:22

Android WebView中子窗口iframe的js方法无法获取父窗口window中的js变量?

如题,今天写了一个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");
  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享
  • 邀请回答

相关推荐