JavaScript使用Android webview获取所有类名文本

时间:2015-07-29 06:40:56

标签: javascript android android-webview

我试图通过这样做来获取课堂上的文字:

 myWebView.setWebViewClient(new WebViewClient() {
        @Override
        public void onPageFinished(WebView view, String url) {
            super.onPageFinished(view, url);
            myWebView.setWebViewClient(null);
            myWebView.loadUrl("javascript:window." +
                    "HTMLOUT.processHTML('<div>'+document.getElementsByClassName('text Phil-1-3')[1].innerHTML+'</div>');");
        }
    });
    myWebView.loadUrl("https://www.biblegateway.com/passage/?search=Philippians+1%3A3&version=ESVUK");

然而它只获得第一个元素。我认为是因为

[0].innerHTML

我想获得所有课程名称的文字,但我不知道如何做到这一点。有任何想法吗?我很乐意感谢你的帮助。谢谢!

1 个答案:

答案 0 :(得分:1)

确切地说 - 你得到了你要求的东西:)

SELECT m.... FROM Moments m LEFT JOIN MomentSeen ms ON ms.MomentID = m.MomentID WHERE ms.MomentID IS NULL ORDER BY ... LIMIT 1 -- if desired 返回一个“类似数组的对象”,您可以使用getElementsByClassName函数迭代其元素并连接它们的Array.reduce

innerHTML

应用于您的示例:

Array.prototype.reduce.call(
    document.getElementsByClassName('...'),
    function(a, b) { return a + '<div>' + b + '</div>' },
    '');