JavaScript实现旋转轮播图

前端之家收集整理的这篇文章主要介绍了JavaScript实现旋转轮播图前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

最近一直在学习JavaScript,然后看到旋转轮播图的案例,就尝试着用js做了一个简单的轮播图,因为无法显示动态效果,所以就放个截图:

这个效果是这样的:一共有7张图片,它们会自动地向左滑动,然后左右箭头也可以控制轮播图的左滑和右滑,同时,如果鼠标停在图片上,那么轮播图会停止自动滑动,当鼠标移开时,将会继续向左轮播。 首先,我这里封装了两个函数(因为暂且还没有学jQuery,所以用了封装函数方法来实现),第一个函数是$函数调用可以获取html中的元素,代码如下:

第二个函数是一个动画函数,用json实现多条样式的动态改变,从而达到一个动画效果代码如下: `

0 ? Math.ceil(step) : Math.floor(step); } current += step; if (key == 'opacity') { if (Math.abs(target - current) > 0.01) { isStop = false; } else { current = target; } element.style.opacity = current + ''; } else { if (Math.abs(target-current) > Math.abs(step)) { isStop = false; } else { current = target; } if (key == 'zIndex'){ element.style.zIndex = Math.round(current); } else { element.style[key] = current + 'px'; } } } if (isStop) { clearInterval(element.timer); console.log('动画完成'); if (typeof fun == 'function') { fun(); } } },30); }`

接下来就要写html的部分了,因为只有几张图片,所以html的部分很简单:

代码也很简单,理清楚就好

图片设置大小透明度 var json = [{ width: 630,top: 23,left: 0,zIndex: 2,opacity: 0 },{ width: 630,zIndex: 3,zIndex: 4,opacity: 0.6 },{ width: 730,top: 0,left: 125,zIndex: 5,opacity: 1 },left: 350,opacity: 0 }];
index++;
if(index == 7){
index = 0;
}
refreshImageLocatin(index);
}
$('#prev').onclick = function(){
index--;
if(index < 0){
index = 6;
}
refreshImageLocatin(index);
}

var nextImage = $('#next').onclick;
var contentBox = $('.content')[0];
//自动播放
var timer = setInterval(nextImage,3000);
//当鼠标移动到图片上,停止播放
contentBox.onmouSEOver = function(){
clearInterval(timer);
}
contentBox.onmouSEOut = function(){
timer = setInterval(nextImage,3000)
}
}

以上就是旋转轮播图的全部内容了,给自己的学习过程做个简单的记录,也顺便巩固一下。

猜你在找的JavaScript相关文章