【问题标题】:Issue with injecting JS code into WebView将 JS 代码注入 WebView 的问题
【发布时间】:2014-01-18 20:27:20
【问题描述】:

我正在使用 android 的 WebView,并且我有这段代码可以将背景变为橙色。

@Override
                public void onPageFinished(WebView view, String url) {
                    wv.loadUrl("javascript:(function() { " +  
                            document.body.style.background = 'orange'; 
                    "})()");
                }

当我想要加载的页面时,背景是橙色的。

但是当我试图隐藏我正在查看的页面上的按钮时..

@Override
                public void onPageFinished(WebView view, String url) {
                    wv.loadUrl("javascript:(function() { " +  
                    "var input = document.getElementById('submit');" +
                    "input.style.display= 'none';" +  
                    "})()");
                }

它不起作用。

谁能告诉我我做错了什么?

【问题讨论】:

    标签: java javascript android webview


    【解决方案1】:

    我认为问题在于当页面完成从网络加载时调用 onPageFinished,不一定与 DOM 准备好同时。您在 logcat 中看到任何 JavaScript 错误吗?

    如果你在 onload 事件监听器中注册 JS 函数,你可能会更幸运。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-02-02
      • 1970-01-01
      • 1970-01-01
      • 2017-08-13
      • 1970-01-01
      相关资源
      最近更新 更多