java - Android - WebView - 滚动到选定的 id
问题描述
我创建了一张世界地图的 HTML 文件。想法:点击一个国家的地图(它有它的id)后,地图必须滚动到国家所在的地方并居中。
在 HTML 中,我给出了函数代码:
function scrollToElement(id) {
var elem = document.getElementById(id);
var x = 0;
var y = 0;
while (elem != null) {
x += elem.offsetLeft;
y += elem.offsetTop;
elem = elem.offsetParent;
}
window.scrollTo(x, y);
}
在 Java 文件的正确位置,我添加了使用传递参数调用此函数的代码:
web_wiev.loadUrl("javascript:scrollToElement('" + msgeToast + "')");
其中: msgeToast 是转发的 id。不幸的是,地图不滚动(有时它滚动,但不在需要的地方,有时它根本不滚动)。你有什么想法?
解决方案
尝试这个,
function scrollTo(element){
document.getElementById(element).scrollIntoView();
}
推荐阅读
- java - 为什么输入 -100000000000000 的输出不正确?
- java - org.openqa.selenium.NoSuchSessionException: invalid session id message=这个版本的ChromeDriver只支持Chrome 74版
- python - 这是比较一个整数的方法吗?我用它来检查它是否是一个字符串列表?
- bash - vscode 集成终端抛出 bash 错误 - echo: command not found
- google-app-engine - 需要帮助从旧版 SDK 迁移 (appcfg)
- java - 如何将大型 JTS 多边形拆分为多个 1 公里乘 1 公里的几何图形?
- c# - 通过 C# 将 Excel 导入 Hadoop
- python - 你如何在 Python 中组合多个字典的列表?
- python - 如何使用 Python 获取 MongoDB 中特定键的值
- python - 尝试复制 Python 结果时出现 Keras 错误