Javascript 如何在添加元素时平滑滚动?
我通过点击两个箭头来制作无限滚动框!我通过加/减15px来完成每个滚动。通过添加现有元素,我检测到滚动左最小值和最大值,以进行无限滚动,但其滚动范围不会达到15。它滚动到整个div宽度。在我添加元素而不是元素宽度后,如何使其滚动到15px $left.clickfunction{ var left=$round.scrollLeft-15; ifleft==-15{ $round div:type.remove.prependToround的最后一个; } $round.scrollLeft; }; $right.clickfunction{ var left=$round.scrollLeft+15; ifleft==315{ $round div:type.remove.appendoround中的第一个; } $round.scrollLeft; }; :-webkit滚动条{ 宽度:0px;/*删除滚动条空间*/ 背景:透明;/*可选:仅使滚动条不可见*/ } /*可选:以红色显示位置指示器*/ :-webkit滚动条拇指{ 背景:透明; } 圆的{ 最大宽度:500px; 最大高度:100px; 宽度:500px; 高度:100px; 边框:1个实心bbb; 溢出:自动; 显示:-webkit内联框; 位置:相对位置; } 圆div{ 宽度:200px; 身高:继承; } 一个{ 背景:红色; } 两个{ 背景:粉红色; } 三{ 背景:绿色; } 四{ 背景:3939; } 跨度{ 位置:固定; 边框:1个实心bbb; 填充:10px; 背景:RGBA255255.5; 颜色:eee; 顶部:30px; 光标:指针; } 左{ 左:10px; } 对{ 左:475px; } 1. 2. 3. 4.Javascript 如何在添加元素时平滑滚动?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我通过点击两个箭头来制作无限滚动框!我通过加/减15px来完成每个滚动。通过添加现有元素,我检测到滚动左最小值和最大值,以进行无限滚动,但其滚动范围不会达到15。它滚动到整个div宽度。在我添加元素而不是元素宽度后,如何使其滚动到15px $left.clickfunction{ var left=$round.scrollLeft-15; ifleft==-15{ $round div:type.remove.prependToround的最后一个; } $round.scrollLeft;
您可以这样修改代码。当你到达左边==15时,你可以考虑在左边添加新元素的宽度,然后滚动。在右侧执行相同的操作,但删除而不是添加: $left.clickfunction{ var left=$round.scrollLeft-15; 如果左==-15{ $round div:type.remove.prependToround的最后一个; 左=$round.scrollLeft+$round div.width-15; } $round.scrollLeft; }; $right.clickfunction{ var left=$round.scrollLeft+15; 如果左=315{ $round div:type.remove.appendoround中的第一个; 左=$round.scrollLeft-$round div.width+15; } $round.scrollLeft; }; :-webkit滚动条{ 宽度:0px; /*删除滚动条空间*/ 背景:透明; /*可选:只需使滚动条不可见*/ } /*可选:以红色显示位置指示器*/ :-webkit滚动条拇指{ 背景:透明; } 圆的{ 最大宽度:500px; 最大高度:100px; 宽度:500px; 高度:100px; 边框:1个实心bbb; 溢出:自动; 显示:-webkit内联框; 位置:相对位置; } 圆div{ 宽度:200px; 身高:继承; } 一个{ 背景:红色; } 两个{ 背景:粉红色; } 三{ 背景:绿色; } 四{ 背景:3939; } 跨度{ 位置:固定; 边框:1个实心bbb; 填充:10px; 背景:rgba255、255、255、.5; 颜色:eee; 顶部:30px; 光标:指针; } 左{ 左:10px; } 对{ 左:475px; } 1. 2. 3. 4.
我可以像这样左+/-=$round div.width;在你的回答中@DavidJorHpan是的,当然,它甚至更好,所以你有一个通用代码。我也更新了我的答案。我使用了固定值,因为我在css中看到它是固定的;