我有一个包含大量项目的div。我通过点击按钮动态选择这些项目,在我的情况下,溢出是自动的。我想要的是,当选择一个不可见的项目时,滚动div以使其可见。我该怎么做?
我有一个包含大量项目的div。我通过点击按钮动态选择这些项目,在我的情况下,溢出是自动的。我想要的是,当选择一个不可见的项目时,滚动div以使其可见。我该怎么做?
<div id="container">
<p id="item-1">foo</p>
<p id="item-2">bar</p>
<p id="item-3">baz</p>
</div>
您可以使用此JavaScript将容器div滚动到第三段:
document.getElementById("container").scrollTop = document.getElementById("item-3").offsetTop;
<div style="height:80px; overflow:auto;">
<input type="text" id="id1"><br><br>
<input type="text" id="id2"><br><br>
<input type="text" id="id3"><br><br>
<input type="text" id="id4"><br><br>
<input type="text" id="id5"><br><br>
<input type="text" id="id6"><br><br>
</div>
<input type="button" onclick="document.getElementById('id6').focus();">
另一种选择是使用锚点。
为每个项目分配一个唯一的ID,当您想要滚动到特定的项目时,请执行以下JavaScript代码:
location.hash = itemID;
...其中itemID
是一个变量,它包含您想要滚动到的元素的ID。
史蒂夫