开发过程中需要用到图片轮播的插件,在网上找了几个插件之后还是决定自己码一个,比较简洁的功能,以后说不定还会有用。
ps:
功能比较简单,整个框并不能根据图片的大小自动调节,这里所用的图片是1170*500的,如果需要改成其他大小的图片,自行修改.pic-list下img的宽度。
.pic-list中的宽度为整个横幅的宽度,如果需要轮播的图片数量很多,.pic-list的宽度应大于数量*单张宽度,
html
<div class="banner"> <!--第一张图片为最后一张,用来做轮播连接使用,所以一开始显示的第一章,应是第二张图片,这里图片的宽度为1170px,所以一开始left为-1170px,同理最后一张图也为第一张图。--> <div class="pic-list" style="left: -1170px"> <img src="/UploadFiles/2021-04-02/4.jpg">css
.banner{ width: 100%; height: 500px; overflow: hidden; position: relative; } .banner a{ text-decoration: none; } .banner .pic-list{ width: 10000px; height: 500px; position: absolute; z-index: 1; } .banner .pic-list img{ width: 1170px; float: left; } #buttons{ position: absolute; z-index: 2; height: 10px; bottom: 20px; left: 550px; } #buttons span{ cursor: pointer; float: left; border: 1px solid #fff; width: 10px; height: 10px; border-radius: 50%; background: #333; margin-right: 5px; } #buttons .on{ background: orange; } .arrow{ cursor: pointer; line-height: 36px; text-align: center; font-size: 20px; font-weight: bold; width: 40px; height: 40px; position: absolute; z-index: 2; top: 200px; background: rgba(0,0,0,0.5); color: #fff; display: none; } .banner:hover .arrow{display: block;} #prev{ left: 20px; } #next{ right:20px; }js
$(document).ready(function(){ var picNum = 4;//图片数量,根据实际修改 var picWidth = 1170;//图片的宽度,根据实际修改 var picMaxWidth = -1 * picNum * picWidth; var currentPic = 1; var next = $('#next'); var prev = $('#prev'); var flag = false; prev.on('click',function(){ if(!flag){ calPx(1170); currentPic--; if (currentPic < 1) { currentPic = picNum; } $('#buttons span').eq(currentPic-1).addClass('on').siblings().removeClass('on'); } }); next.on('click',function(){ if(!flag){ calPx(-1170); currentPic++; if (currentPic > picNum) { currentPic = 1; } $('#buttons span').eq(currentPic-1).addClass('on').siblings().removeClass('on'); } }); $('.banner').on('mouseover',function(){ stop(); }).on('mouseout',function(){ play(); }) function nextClick(){ next.click(); } function play(){ setInt = setInterval(nextClick,2000); } function stop(){ clearInterval(setInt); } function calPx(leftPx){ flag = true; var left = parseInt($('.pic-list').css('left')); var newLeft = left+leftPx; var time = 300; var interval = 10; var speed = leftPx/(time/interval); function go(){ var left = parseInt($('.pic-list').css('left')); if((speed < 0 && left > newLeft) || (speed > 0 && left < newLeft)){ $('.pic-list').css('left', (left + speed) + 'px'); setTimeout(go,interval); }else{ flag = false; if( newLeft > -1170){ newLeft = picMaxWidth; }else if (newLeft < picMaxWidth ) { newLeft = -1170; } $('.pic-list').css('left',newLeft + 'px'); } } go(); } play(); });以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
华山资源网 Design By www.eoogi.com
广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!
华山资源网 Design By www.eoogi.com
暂无评论...
更新日志
2024年11月15日
2024年11月15日
- 群星《2024好听新歌14》十倍音质 U盘音乐 [WAV分轨][966M]
- s14全球总决赛T1战队队员都有谁 LOLs14全球总决赛T1战队介绍
- 英雄联盟faker身价有10亿吗 英雄联盟faker身价介绍一览
- faker大魔王称号怎么来的 faker大魔王称号来源介绍
- PS5 Pro上的蒂法更美了!博主盛赞新机1000%值得购买
- 腾讯互娱再离职一员大将!或因供应商贪腐
- Ayaneo3游戏掌机预热:旗舰定位、造型圆润自带底键
- 动力火车.1999-背叛情歌【上华】【WAV+CUE】
- 刘力扬.2019-Neon.Lit虹【摩登天空】【FLAC分轨】
- 群星.2002-恋爱物语情歌对唱精选2CD(引进版)【滚石】【WAV+CUE】
- 群星《闽南情24K德国HD金碟》2CD[WAV+CUE]
- 周传雄《恋人创世纪》环球唱片[WAV+CUE]
- 关淑怡-《真假情话K2HD》(日本压制)【WAV+CUE】
- 王菲 -《Faye Wong》雨果LPCD45 [WAV+分轨][1G]
- 陈百强《世纪10星·永恒篇》环球[WAV+CUE][1G]