在网页中我们想要的无缝轮播左右循环有好多好多中,这是我第一个轮播效果,也是最基础的,和大家分享一下,对于初学者希望你们能有所借鉴,对于大神我想让你们尽情的虐我给我宝贵的意见。
这个是我要的效果
进入正题,首先是布局,布局的原理就是在DIV中创建ul标签,ul中插入li标签,在里插入图片,你想要几个图片轮播,插入几个li。布局上主要的点在于div设置大小,加上overflow:hidden;让超出部分隐藏,ul的长度是所有图片的总长度,li浮动。
html代码
![]()
赵茜
北京大学历史系研究生
![]()
![]()
赵茜
北京大学历史系研究生
![]()
![]()
赵茜
北京大学历史系研究生
![]()
![]()
赵茜
北京大学历史系研究生
![]()
![]()
赵茜
北京大学历史系研究生
![]()
![]()
赵茜
北京大学历史系研究生
![]()
css代码
#djlb { overflow: hidden; } #bigul { } #bigul > ul { position: relative; float: left; } #bigul > ul > li:nth-child(even) { position: absolute; display: none; } #bigul > ul > li { float: left; } #aniu { position: relative; } #aniu > div { position: absolute; } #aniu > div:first-child{ left:-55px; top: -290px; display: inline-block; border-left: 6px solid #c2c2c2; border-top: 6px solid #c2c2c2; transform: rotate(-45deg); } #aniu > div:last-child{ left: 1210px; top: -290px; display: inline-block; border-right: 6px solid #c2c2c2; border-bottom: 6px solid #c2c2c2; transform: rotate(-45deg); } #aniu > div:first-child:hover{ border-left: 6px solid #ffcc00; border-top: 6px solid #ffcc00; } #aniu > div:last-child:hover { border-right: 6px solid #ffcc00; border-bottom: 6px solid #ffcc00; }
主要说明一下我js的思路;
$(function () { var i = 0, tick, list, ul = $("#bigul"); $("#bright").click(function () { $("#bigul").animate({ "margin-left": -300 }, 30000, function () {//当你执行完了后发生的事件 list =ul.find("ul"); //正常的话ul就是li,因为我这个需要鼠标浮动显示隐藏,结构一样 ul.append(list.first()); //ul追加到最后一个 ul.css("margin-left",0); //在每一次点击过后,margin-left初始化为零,为什么嘛要初始化呢? 思考一下? });//这样就向右无限循环了,就像队列一样 if (tick) { clearTimeout(tick); } //清除上一次定时器 tick = setTimeout(function () { $("#bright").click(); }, 30000); 定时器自动的部分 }); $("#bleft").click(function(){ list = ul.find("ul"); list.last().insertBefore(list.first()); // 当第一次点击时,把最后的搬到前面来, ul.css("margin-left",-300); ul.animate({ "margin-left": 0 }, 3000); //同样这个问题?? if (tick) { clearTimeout(tick); } tick = setTimeout(function () { $("#bleft").click(); }, 3000); }); $("#bright").click(); //自动向右事件 });
现在和你说为什么,如果不初始化,你点击右边的时候,他会重第一张到第三张,因为当你把第一个搬到后面一个时,ul父盒子左边是0,下一次移动他会自动补全他的位置,也就是两个位置,所以直接就是第三张图了,我是画图才想明白的嘻嘻!
整个思路:
运用animate让li移动,
当向右点击时,运用append()方法把第一个张追加到最后一张,而且要每次移动要清除一下子。
向左点击时,运用insertBefore()把最后一张插入第一张,也要清除一下
tick是我们定义的定时器settimeout
最后一句就是自动向右事件了
鼠标移动显示隐藏就是用到了mouseout() 和show(),hide()就ok了
火柴人绳索英雄2无限金币版 (Stickman Rope Hero 2)安卓版v2.2v3.4.2
下载奥特曼之格斗超人内测版本 安卓最新版v11.0.0
下载奥特曼之格斗超人百度版 安卓版v11.0.0
下载奥特曼之格斗超人4399游戏盒版 最新安卓版v11.0.0
下载德凯奥特曼D闪光剑模拟器 安卓版v1.0
德凯奥特曼D闪光剑模拟器是一个非常有趣的奥特曼变身模拟器,可
亚刻觉醒器 安卓版v1.1
亚刻觉醒器模拟器是一个非常有趣的奥特曼变身模拟器,为喜欢亚刻
海上餐厅无限金币版 v1.0
海上餐厅免广告版是游戏的破解版本,在该版本中为玩家去除了广告
阿西美女室友竟然全解锁版 v1.0.2
阿西美女室友竟然内置菜单版是游戏的破解版本,在该版本中为玩家
我是大东家正版 最新版v1.2.738
我是大东家正版是一款放置类模拟经营手游,玩家将回到古代成为家