博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
js___原生js轮播
阅读量:5966 次
发布时间:2019-06-19

本文共 4081 字,大约阅读时间需要 13 分钟。

原生js轮播

 

作为一名前端工程师,手写轮播图应该是最基本掌握的技能,以下是我自己原生js写的轮播,欢迎指点批评;

首先css代码

a{
text-decoration:none;color:#3DBBF5;} *{
margin: 0; padding: 0; } .wrapper{
width: 400px; height: 300px; margin: 100px auto; } #lunbo{
position: relative; overflow: hidden; } #list{
position: relative; white-space: nowrap; // 这块用行元素模拟,所以才用该属性,块元素可修改这块 } #list span{
display: inline-block; width: 400px; height: 300px; text-align: center; line-height: 300px; font-weight: bold; font-size: 100px; color: #fff; } #buttons{
position: absolute; bottom: 0; text-align: center; width: 100%; height: 40px; line-height: 40px; } #buttons span{
display: inline-block; width: 15px; height: 5px; background: #fff; margin: 0 10px; cursor: pointer; transition: all .5s; } #buttons span.on{
height: 20px; } .arrow{
position: absolute; top: 50%; transform: translateY(-50%); font-size: 80px; font-weight: bold; color: #fff; opacity: .3; transition: all .5s; } .wrapper:hover .arrow{
opacity: 1; } #prev{
left: 10px; } #next{
right: 10px; }
View Code

然后HTML代码

5
1
2
3
4
5
1
View Code

最后js代码

window.οnlοad=function  () {
var lunBo = document.getElementById("lunbo"); var list = document.getElementById("list"); var btn = document.getElementById("buttons").getElementsByTagName('span'); var prev = document.getElementById("prev"); var next = document.getElementById('next'); var interval = 3000; var timer; var index = 1; var animated = false; for (var i=0;i
0 && parseInt(list.style.left)
newLeft)) { //通过条件判断到它是否还要继续进行动画 list.style.left = parseInt(list.style.left) + speed +'px'; setTimeout(go,interval) } else{
animated = false; //动画状态结束 list.style.left = newLeft + 'px'; //现在的位移 if (parseInt(list.style.left)<-2000) { // 辅助假图 list.style.left = -400 + 'px'; } else if( parseInt(list.style.left)>-400){
list.style.left = -2000 + 'px'; } } } go(); } function play () {
timer = setTimeout(function () { next.onclick(); play(); },interval) } play(); function stop () {
clearTimeout(timer); } lunBo.οnmοuseοver=stop; lunBo.οnmοuseοut=play; }

     以上是所有代码,欢迎指点交流!

 

 

转载于:https://www.cnblogs.com/houjinlong/p/6867610.html

你可能感兴趣的文章
微信开发之模板消息
查看>>
[python机器学习及实践(2)]Sklearn实现朴素贝叶斯
查看>>
SQL Server不存在或拒绝访问故障的排除
查看>>
java多线程(二)——锁机制synchronized(同步方法)
查看>>
(原创)在service中定时执行网络操作的几点说明
查看>>
[Javascript]XMLHttpRequest对象实现下载进度条
查看>>
UVA-572-搜索基础题
查看>>
iBeacon技术
查看>>
mac环境下配置nginx
查看>>
const与volatile
查看>>
电脑出现 flash update failed 解决方法
查看>>
【matlab】matalb生成dll给Cpp用
查看>>
《线性代数习题集》 Chapter 1_Determinants_Sec.1.Second-and Third-Order Determinants
查看>>
陶哲轩实分析 命题7.2.5 证明
查看>>
destoon复制新模块的方法
查看>>
【百度地图API】如何制作班级地理通讯录?LBS通讯录
查看>>
第二周作业
查看>>
构建之法阅读笔记之三
查看>>
LWIP2.0.2 & FreeRTOS & MQTT 客户端的 使用
查看>>
【状压dp】AC Challenge
查看>>