我有一个固定大小的div,逐渐添加越来越多的内容,获得一个水平滚动条。我想要的是能够随时强制滚动条到我想要的位置,这样我就可以保持最新添加的内容始终可见,并将旧内容向左移动。但是,如果不使用jQuery--这对于一个功能来说似乎很愚蠢 - 我似乎无法找到一种方法来做到这一点。如何控制div的水平滚动?
0
A
回答
0
你可以使用家长控制的方向和正确的设置到左
<div class="container">
<div class="scroller">
</div>
</div>
div.container{
width:400px;
height:300px;
overflow-x:scroll;
direction:rtl;
}
div.scroller{
width:1000px;
height:300px;
}
确保你包裹在你的滚动内容,并设置方向为LTR应该做您的需要。仅在Mac上进行测试,但rtl是您需要的。如果你的容器是动态的,你可能需要像scrollIntoView()这样的js。它适用于这个静态示例。
0
尝试将div的scrollLeft
设置为scrollWidth
。
例如
document.getElementById("btnAdd").onclick = function() {
var divContent = document.getElementById("divContent");
divContent.innerHTML += "<span>some stuff </span>";
divContent.scrollLeft = divContent.scrollWidth;
};
#divContent {
overflow-x: auto;
overflow-y: hidden;
height: 50px;
width: 300px;
white-space: nowrap;
}
<div id="divContent"></div>
<button id="btnAdd">add</button>
0
您可以使用scrollIntoView()
,它会滚动的特定项目进入视野。
CSS
.cont{
width: 200px;
height: 100px;
border: 1px solid black;
overflow: auto;
overflow-y: hidden;
white-space: nowrap;
}
.element{
width: 50px;
margin: 10px;
font-size: 40px;
display: inline-block;
}
HTML
<div class="cont">
<div class="element">1</div>
<div class="element">2</div>
<div class="element">3</div>
<div class="element">4</div>
<div class="element">5</div>
<div class="element">6</div>
</div>
的JavaScript
function scrollTo(item) {
document.getElementsByClassName('element')[item].scrollIntoView();
};
scrollTo(5);
相关问题
- 1. 如何控制QTextBrowser水平滚动条
- 2. 水平滚动条控制
- 3. 水平滚动Div
- 4. javascript的水平滚动div
- 5. div的水平滚动条
- 6. div的水平滚动条
- 7. 水平滚动定位div
- 8. CSS水平DIV滚动
- 9. 水平滚动和切DIV
- 10. 滚动条水平DIV
- 11. Div水平滚动问题
- 12. 水平滚动DIV数组
- 13. jQuery:水平滚动到div
- 14. Drupal/jquery水平滚动div
- 15. 元素div水平滚动
- 16. DIV水平滚动条成为主要水平滚动条
- 17. 使用waypoints.js控制水平滚动
- 18. 水平滚动控制具有
- 19. WPF:如何滚动ListView控件水平?
- 20. 水平滚动控件
- 21. 浮动水平的div而水平滚动 - CSS/jQuery的
- 22. 浮动水平滚动的DIV + CSS
- 23. 如何制作水平滚动列表
- 24. 如何制作水平滚动图库
- 25. 在滚动div内水平对齐DIV
- 26. 如何控制水平列表视图中的滚动?
- 27. 如何让div滚动水平滑鼠上下滚动
- 28. 平滑滚动div水平的像素量,没有滚动条
- 29. 如何禁用水平滚动? (不去除水平滚动条)
- 30. 滚动相对于父div来孩子的div水平滚动
你有什么试过?你有没有尝试使用'scrollIntoView()' –