之前页面需要图片轮播的时候,都是直接在网上找一个插件,然后自己动手改一下,把图片的路径改成自己图片的路径,然后万事大吉。后来觉得这样并不能提高自己的前端水平,于是乎,自己动手写了一个图片轮播的小demo,用的是jquery,小弟前端小白一个,各位前端大神看了之后,望批评指正。

我的思路是这样的,定义两个变量,一个用来保存当前页码$index,一个用来保存上一页的页码$exdex,首先判断$index和$exdex的大小,如果$index大于$exdex,说明是朝左翻页,反之,就是朝右翻页。如果是朝左翻页,就把当前页朝左偏移100%的宽度,让下一页同样朝左偏移100%宽度。以下是代码部分:
<html>
<head lang="en">
<meta charset="UTF-8">
<title></title>
<style>
.banner{
width:300px;
height:250px;
position: relative;
z-index: 100;
background: skyblue;
margin:100px auto;
overflow:hidden ;
}
.banner .first{
left:0;
}
.banner a{
width: 100%;
height: 100%;
position: absolute;
display:block;
top:0;
left:100%;
}
.banner a img{
width: 100%;
height: 100%;
}
.banner .pre{
position: absolute;
left:0;
top:120px;
background: gray;
width:30px;
height:30px;
border-radius: 30px;
line-height: 30px;
text-align: center;
opacity: 0.4;
z-index: 1000;
cursor: pointer;
}
.banner .next{
position: absolute;
right:0;
top:120px;
background: gray;
width:30px;
height:30px;
border-radius: 30px;
line-height: 30px;
text-align: center;
opacity: 0.4;
z-index: 1000;
cursor: pointer;
}
.choose{
position: absolute;
width:100px;
height:20px;
bottom:10px;
left:90px;
z-index: 1000;
}
.choose span{
display: block;
float: left;
margin-left:15px;
width:10px;
height:10px;
border-radius: 10px;
background: blue;
cursor: pointer;
}
.choose .red{
background: red;
}
</style>
</head>
<body>
<div class="banner">
<span class="pre"><=</span>
<span class="next">=></span>
<a href="#" class="first"><img src="./1.jpg" alt=""/></a>
<a href="#"><img src="./2.jpg" alt=""/></a>
<a href="#"><img src="./3.jpg" alt=""/></a>
<a href="#"><img src="./4.jpg" alt=""/></a>
<div class="choose">
<span class="red"></span>
<span></span>
<span></span>
<span></span>
</div>
</div>
</body>
<script src="./jquery.min.js"></script>
<script>
var $index = 0;
var $exdex = 0;
$('.choose span').mouseover(function(){
$index = $(this).index();
$('.choose span').eq($index).addClass("red").siblings().removeClass("red");
if($index > $exdex) {
next();
} else {
pre();
}
return $exdex = $index;
});
function next() {
$('.banner a').eq($index).stop(true,true).css('left',"100%").animate({"left":0});
$('.banner a').eq($exdex).stop(true,true).css('left',"0").animate({"left":"-100%"});
}
function pre() {
$('.banner a').eq($index).stop(true,true).css('left',"-100%").animate({"left":"0"});
$('.banner a').eq($exdex).stop(true,true).css('left',"0").animate({"left":"100%"});
}
</script>
</html>
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
# js
# 图片轮播
# 原生JS实现风箱式demo
# 并封装了一个运动框架(实例代码)
# JS简单封装的图片无缝滚动效果示例【测试可用】
# 原生js实现水平方向无缝滚动
# 原生js实现无缝轮播图效果
# 原生JS实现图片无缝滚动方法(附带封装的运动框架)
# 翻页
# 朝左
# 自己动手
# 自己的
# 的是
# 都是
# 看了
# 下一页
# 是这样
# 上一页
# 万事大吉
# 就把
# 大神
# 写了
# 找一个
# 并不能
# 大家多多
# 在网上
# 朝右
# 当前页
相关文章:
Android自定义listview布局实现上拉加载下拉刷新功能
已有域名和空间,如何快速搭建网站?
如何在Golang中指定模块版本_使用go.mod控制版本号
如何在香港服务器上快速搭建免备案网站?
建站之星如何通过成品分离优化网站效率?
建站VPS推荐:2025年高性能服务器配置指南
厦门模型网站设计制作公司,厦门航空飞机模型掉色怎么办?
如何在宝塔面板创建新站点?
企业宣传片制作网站有哪些,传媒公司怎么找企业宣传片项目?
已有域名建站全流程解析:网站搭建步骤与建站工具选择
如何快速查询网站的真实建站时间?
如何有效防御Web建站篡改攻击?
如何快速配置高效服务器建站软件?
建站之星安装步骤有哪些常见问题?
建站之星代理费用多少?最新价格详情介绍
油猴 教程,油猴搜脚本为什么会网页无法显示?
西安大型网站制作公司,西安招聘网站最好的是哪个?
建站之星客服服务时间及联系方式如何?
车管所网站制作流程,交警当场开简易程序处罚决定书,在交警网站查询不到怎么办?
如何在Ubuntu系统下快速搭建WordPress个人网站?
制作网站公司那家好,网络公司是做什么的?
制作网站建设的公司有哪些,网站建设比较好的公司都有哪些?
宝塔Windows建站如何避免显示默认IIS页面?
济南网站建设制作公司,室内设计网站一般都有哪些功能?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
免费视频制作网站,更新又快又好的免费电影网站?
如何高效搭建专业期货交易平台网站?
大连 网站制作,大连天途有线官网?
网站制作怎么样才能赚钱,用自己的电脑做服务器架设网站有什么利弊,能赚钱吗?
怎么用手机制作网站链接,dw怎么把手机适应页面变成网页?
建站主机是否属于云主机类型?
Android自定义控件实现温度旋转按钮效果
建站之星安装后界面空白如何解决?
韩国网站服务器搭建指南:VPS选购、域名解析与DNS配置推荐
专业的网站制作设计是什么,如何制作一个企业网站,建设网站的基本步骤有哪些?
如何用AWS免费套餐快速搭建高效网站?
公司门户网站制作公司有哪些,怎样使用wordpress制作一个企业网站?
如何在Tomcat中配置并部署网站项目?
制作电商网页,电商供应链怎么做?
做企业网站制作流程,企业网站制作基本流程有哪些?
潍坊网站制作公司有哪些,潍坊哪家招聘网站好?
JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)
如何将凡科建站内容保存为本地文件?
为什么Go需要go mod文件_Go go mod文件作用说明
阿里云网站制作公司,阿里云快速搭建网站好用吗?
建站之星价格显示格式升级,你的预算足够吗?
深圳网站制作案例,网页的相关名词有哪些?
制作网站的模板软件,网站怎么建设?
网站建设制作、微信公众号,公明人民医院怎么在网上预约?
如何快速辨别茅台真假?关键步骤解析
*请认真填写需求信息,我们会在24小时内与您取得联系。