javascript - 水平滚动 100px
问题描述
嘿乔,
问题:一周以来,我一直在寻找 javascript 或 jQuery 代码,以便在我的网站上运行已实现的滚动按钮。我失败的那一刻是按钮应该多次工作:他的任务不是滚动到专用元素,它应该向左滚动,例如 100px。此外,滚动应该在适当的部分顺利进行(换句话说,动画)。
我尝试了什么:直到现在我试图完成这项任务,$('#idofsection').animate({scrollLeft: 100}, 800)
但显然它没有奏效。问题是,一个人不能多次使用它,它只是滚动到我的部分中的一个位置。之后我使用了 javascript 的scrollBy(100, 0)
or scrollLeft += 100px
,但不幸的是没有让它平滑滚动。
我希望有人可以帮助我,因为我在这个问题上花了很多时间却没有找到解决方案。非常感谢,斯文
解决方案
您可以像尝试一样使用 scrollBy(100, 0) 并将此 css 属性添加到要滚动的视口中:
scroll-behavior: smooth;
.window{
width: 200px;
height: 100px;
border: 1px red solid;
overflow: hidden;
scroll-behavior: smooth;
}
.container{
width: 1000px;
height: 200px;
}
.buttons{
width: 200px;
display: flex;
flex-direction: row;
justify-content: space-between;
}
<div id="window" class="window">
<div class="container">
fjsdlf jslkd flsakj flksad jflkjsa dlfj slakd jflskad flksdaj lfk sadlkfj asldk fslkad fjlkasd flksa jdlf jsadlkfj slkda jflksadj flksa jdlkfj sadlk jflksadj flksjadflksadj flksdaj flksdaj flksdaflksjdflk sjdalkfj skdal fjlksadj flksa fklsjadfklj sadklfj salkdjf lksadj flksjad lfkj sadlkf jslakdjf lksdaj flkasj flkjsa dlfskal flsa jdas lkfjskad fj
</div>
</div>
<div class="buttons">
<button onclick="document.getElementById('window').scrollBy(-100,0)">
<-
</button>
<button onclick="document.getElementById('window').scrollBy(100,0)">
->
</button>
</div>
解决方案也在这里:JSFiddle
推荐阅读
- io - 可以在控制台输入上 deno emmit 事件吗?
- windows - 使用未解析的变量或脚本参数创建脚本(如“%~dp0”)
- vue.js - 如何在 vue 模板中使用异步功能?
- r - 在 geom_text() 的分组文本中插入返回
- html - HTML - 一个溢出的、相对定位的子元素在它的父元素中创建了额外的空间
- python - 如何从 Kivy 的 ScreenManager 访问 id 并通过主应用程序类处理它们?
- php - 无法在非身份验证应用程序中显示会话变量
- typescript - 类型“Type[T]”上不存在属性“key”
- special-characters - 在 ColdFusion 中保留重音字符值
- azure - 如何在本地运行 2 个 Azure 存储本地模拟器实例?