javascript实现图片循环滚动效果


 

如图,图片实现无缝滚动,点击向左向右滚动控制方向,且当鼠标悬浮在div中时,图片停止滚动;当鼠标离开div中,图片继续滚动。

原理:复制一遍整个ul,给定一个速度让ul向右或向左滚动,当整个ul要滚动到div边界时,再将整个复制的ul向左或向右拖拽直至整个ul中的图片归位。

                                                                                                图①

 

                                                                                                  图②

 

                                                                                                    图③

                                                                                                       图④ 

                                                                                                       图⑤

                                                                                                                                                                                                           

如图图片向左滚动,当运动到图③位置时,offsetLeft就小于二分之一ul的宽度,此时将ul中的第一个图片拉回到起点即图①的位置;

同理当图片向右滚动运动到图④位置,此时在div内部的ul的offsetLeft就大于0,将ul中的第八个图片拉回到原位即图⑤的位置。

上代码:






无缝滚动,移入暂停




向左滚动 向右滚动