Android Webview通过Javascript注入CSS

时间:2016-05-17 15:22:21

标签: javascript android css webview

我需要在我的网页视图中加载的网站中注入css。

网页在线而非本地。

这是我尝试过的最新代码。

当我尝试运行时,一切都保持不变,我测试了css,它做了我想要的。

private void carregaCSS() {

        String extraStyles;     
        extraStyles= "javascript: myfunction(){";

        extraStyles += " document.querySelectorAll('div.live-search-container')[0].style.display = 'none';";
        extraStyles += " document.querySelectorAll('div#top-bar')[0].style.display = 'none';";
        extraStyles += " document.querySelectorAll('span#btn-mobile-toggle')[0].style.display = 'none';";
        extraStyles += " document.querySelectorAll('div#cart')[0].style.display = 'none';";
        extraStyles += " document.querySelectorAll('div.col-md-7')[0].style.display = 'none';";
        extraStyles += " }";
        Log.d("extraextraStyles",extraStyles.toString());
        mWebView.loadUrl(extraStyles);      
    }

1 个答案:

答案 0 :(得分:0)

我设法让它工作,我只需要在创建它之后调用该函数。

private void carregaCSS() {
        final String extraStyles;       
        extraStyles= "javascript: "
        + "function css(){ "
            + " document.querySelectorAll('div.live-search-container')[0].style.display = 'none';"
            + " document.querySelectorAll('div#top-bar')[0].style.display = 'none';"
            + " document.querySelectorAll('span#btn-mobile-toggle')[0].style.display = 'none';"
            + " document.querySelectorAll('div#cart')[0].style.display = 'none';"
            + " document.querySelectorAll('div.col-md-7')[0].style.display = 'none';"
            + " document.querySelectorAll('div.breadcrumb')[0].style.display = 'none';"
        + "}" 
        +"css();"

        +"";
        mWebView.loadUrl(extraStyles);
        }
}