在WebView中滚动到HTML内容

Ari*_*Ari 4 android android-webview

有没有办法以编程方式滚动WebView中显示的HTML元素

WebView API仅提供scrollTo(x,y)方法,但我找不到确定显示元素位置的方法.

使用Javascript:

webView.getSettings().setJavaScriptEnabled(true);
webView.loadUrl("javascript:document.getElementById('id').scrollIntoView();");
Run Code Online (Sandbox Code Playgroud)

inm*_*yth 5

也许不是直接使用WebView但使用javascript.如果你有一个js函数来滚动到这样的元素:

function scrollTo(element){
   document.getElementById(element).scrollIntoView();
}
Run Code Online (Sandbox Code Playgroud)

您可以使用WebView从中调用它

mWebView.loadUrl("javascript:scrollTo('element')");
Run Code Online (Sandbox Code Playgroud)

只需确保在WebView中启用了javascript

mWebView.getSettings().setJavaScriptEnabled(true);
Run Code Online (Sandbox Code Playgroud)