Android webview 注入 js 脚本,实现隐藏图片

以百度为例


logo.png

首先通过浏览器的 F12 开发者工具,查看需要隐藏图片的信息,如图上可看到图片的 div 布局 id=“logo”。

然后重写 webview 的 WebViewClient onPageFinished方法

        mWebView.webViewClient = object : WebViewClient() {

            override fun shouldOverrideUrlLoading(view: WebView, url: String): Boolean {
                   ...
            }

            override fun onPageFinished(view: WebView, url: String) {
                super.onPageFinished(view, url)
                view.loadUrl("javascript:" + setJs())
            }
        }

setJs()就是我们要注入的 js 脚本

    //自定义js脚本
    fun setJs(): String {
        var js = "var newscript = document.createElement(\"script\");"
        js += "document.getElementById('logo').style.display = 'none';"
        js += "document.body.appendChild(newscript);"
        return js
    }

其实就是找到 id=“logo” 的元素,将其隐藏

效果


device-2019-02-22-102155.png

除此之外也可通过这个方法,写入更多的 js 脚本,实现不同的需求。

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容