通过android webview中的javascript将一些元素附加到html页面

时间:2014-11-20 07:43:56

标签: javascript android html webview

我想在android webview中创建无限滚动,所以当用户向下滚动时,他可以看到更多我的本地html,所以我做了以下内容:

当用户到达目的地时,我获取另一个页面的正文内容并将其作为String存储在ArrayList中(每个标记位于一个位置),并通过javascript将它们逐个附加到当前页面。

所有事情都很好但是,有些身体元素不会附着,我得到Uncaught Error: INVALID_STATE_ERR: DOM Exception 11 at null:1

这是代码:

for(String body : bodyChunks) //bodyChunks is ArraList of body elements like <p> tags.
{  
     if(!loadIntrupt)
     {
         String js = "javascript:(function() { document.body.innerHTML += '" + body + "';}())"; // load on bottom
         loadUrl(js);
     }

}

所以附上一段而另一段不会!

谁能说出问题是什么?

这是我在这种情况下的另一篇文章:infinite scroll in android webview

1 个答案:

答案 0 :(得分:0)

首先,字符串中的'应替换为\'

body = body.replace("'", "\\'");

然后应该删除所有换行符:

body = body.replaceAll(System.getProperty("line.separator"), " ");

所有问题都解决了。