原生JS和jQuery实现图片轮播淡入淡出效果
图片轮播是Web开发中常用的功能之一,而淡入淡出效果则是常见的动画效果。在这篇文章中,我们将介绍如何使用原生JS和jQuery分别实现图片轮播淡入淡出效果。
原生JS实现
HTML结构
首先,我们需要一个HTML结构来容纳图片轮播组件,如下所示:
---- --------------- ---- ---------------- ------- ---- ---------------- ------- ---- ---------------- ------- ------
CSS样式
接着,我们需要对轮播组件进行一些基本的CSS样式设置,如下所示:
------- - --------- --------- - ------- --- - --------- --------- ---- -- ----- -- -------- -- ----------- ------- -- ------------ - ------- ---------- - -------- -- -
其中,.slider
元素的position
属性被设置为relative
,以便轮播图片可以相对于该元素进行定位。.slider img
元素的position
属性被设置为absolute
,以便它们可以覆盖在一起。另外,.slider img
元素的opacity
属性被设置为0,以便它们在开始时不可见。最后,.slider img.active
元素的opacity
属性被设置为1,以便它们在切换时可以显示出来。
JavaScript代码
下面是JavaScript代码,用于实现图片轮播淡入淡出效果:
----- ------ - ---------------------------------- ------ --- --- - -- -------- ----- - ------ -- ---- - ------------- - -- - --- - -- - ------------------ -- -------------------------------- ------------------------------------ - ---------------- ------
其中,images
是一个包含所有图片元素的NodeList对象。idx
变量表示当前显示的图片索引。run
函数用于切换图片。它首先将idx
加1并检查其是否超过了图片数量,如果超过了则将idx
重置为0。然后,它使用forEach
方法遍历所有图片元素,并从它们的类列表中移除active
类。最后,它将激活下一个图片元素的active
类。
最后一行使用setInterval
方法来定期执行run
函数。在这个例子中,我们将轮播速度设置为2秒。
jQuery实现
HTML结构
同样,我们需要一个HTML结构来容纳图片轮播组件,如下所示:
---- --------------- ---- ---------------- ------- ---- ---------------- ------- ---- ---------------- ------- ------
CSS样式
接着,我们需要对轮播组件进行一些基本的CSS样式设置,如下所示:
------- - --------- --------- - ------- --- - --------- --------- ---- -- ----- -- -------- -- ----------- ------- -- ------------ - ------- ---------- - -------- -- -
这些CSS样式与上面的原生JS实现相同。
JavaScript代码
下面是使用jQuery实现图片轮播淡入淡出效果的代码:
----- ------- - ---------- ------ --- --- - -- -------- ----- - ------ -- ---- - -------------- - -- - --- - -- - ------------------------------ ----------------------------------- - ---------------- ------
在这个例子中,我们首先使用$
函数获取所有图片
来源:JavaScript中文网 ,转载请注明来源 本文地址:https://www.javascriptcn.com/post/2663