pei6964012 2015-10-21 11:22
浏览 3666

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");
  • 写回答

0条回答

    报告相同问题?

    悬赏问题

    • ¥15 如何在scanpy上做差异基因和通路富集?
    • ¥20 关于#硬件工程#的问题,请各位专家解答!
    • ¥15 关于#matlab#的问题:期望的系统闭环传递函数为G(s)=wn^2/s^2+2¢wn+wn^2阻尼系数¢=0.707,使系统具有较小的超调量
    • ¥15 FLUENT如何实现在堆积颗粒的上表面加载高斯热源
    • ¥30 截图中的mathematics程序转换成matlab
    • ¥15 动力学代码报错,维度不匹配
    • ¥15 Power query添加列问题
    • ¥50 Kubernetes&Fission&Eleasticsearch
    • ¥15 報錯:Person is not mapped,如何解決?
    • ¥15 c++头文件不能识别CDialog