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 想问一下树莓派接上显示屏后出现如图所示画面,是什么问题导致的
    • ¥100 嵌入式系统基于PIC16F882和热敏电阻的数字温度计
    • ¥15 cmd cl 0x000007b
    • ¥20 BAPI_PR_CHANGE how to add account assignment information for service line
    • ¥500 火焰左右视图、视差(基于双目相机)
    • ¥100 set_link_state
    • ¥15 虚幻5 UE美术毛发渲染
    • ¥15 CVRP 图论 物流运输优化
    • ¥15 Tableau online 嵌入ppt失败
    • ¥100 支付宝网页转账系统不识别账号