【发布时间】:2021-07-26 09:28:03
【问题描述】:
我想要使用鼠标滚动(鼠标滚轮和触摸板)实现流畅水平滚动
我只能让它从一个位置跳到另一个位置。
function transformScroll(event) {
if (!event.deltaY) {
return;
}
event.currentTarget.scrollLeft += event.deltaY + event.deltaX
}
var element = document.scrollingElement || document.documentElement;
element.addEventListener('wheel', transformScroll);
.hs {
position: absolute;
display: grid;
grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
list-style: none;
}
.hs > li,
.item {
border-right: #ffffff99 1px solid;
width: 25vw;
height: 100vh;
}
.item:last-child {
border-right: unset;
}
<ul class="hs">
<li class="item">test</li>
<li class="item">test</li>
<li class="item">test</li>
<li class="item">test</li>
<li class="item">test</li>
<li class="item">test</li>
</ul>
我不在乎它是用 js 编程还是只用 css 编程。 我们尝试了其他 js 和 css(例如旋转网格)方法,但没有得到令人满意的结果。
【问题讨论】:
-
滚动行为:平滑有影响吗?
-
没有区别,因为它只是添加一个值并立即使用新值。
标签: javascript html jquery css scroll