视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
JS实现淘宝幻灯片效果的实现方法_javascript技巧
2020-11-27 21:07:51 责编:小采
文档
 实现思路:

1、for循环给数字按钮加上点击事件。

2.for循环先把按钮的样式清空,再把当前样式设置样式。

3、给每个按钮添加自定义属性index aBtn[i].index=i aBtn[2]=2 第二个按钮和第二张图片想对应,用运动框架把大图的UL每次移动-150px,因为图片高度是150px。如果移动到第n张图片就是-150*n。

4、定义变量now,用来自动播放用的。把当前图片赋值给now now=this.index。

5、定义自动播放函数。now++ 下一张,if判断,到最后一张图片的时候就把now设置为0,就是第一张。 if(now==aBtn.length)

6、定义定时器,每2秒就调用一次自动播放函数。

7、鼠标指向图片时就清除定时器。

8、鼠标离开图片时就开启定时器。

代码如下:

window.onload=function()
{
var oDiv=document.getElementById('play');
var aBtn=oDiv.getElementsByTagName('ol')[0].getElementsByTagName('li');
var oUl=oDiv.getElementsByTagName('ul')[0];
var now=0;

for(var i=0;i {
aBtn[i].index=i;
aBtn[i].onmouseover=function()
{
now=this.index; //当前值赋给now
tab();
}
};

function tab()
{
for(var i=0;i {
aBtn[i].className=''; //把所有按钮的样式清空
};
aBtn[now].className='active'; //当前按钮样式设置
startMove(oUl,{top:-150*now}); //用运动框架把UL的TOP设置为当前个数*-150,第三张图片就是2*-150
};

function next()
{
now++; //切换图片
if(now==aBtn.length) //如果到了最后一张图片
{
now=0; // 把图片拉回第一张
}
tab(); //把图片拉回第一张后继续运动
};

var timer=setInterval(next,2000); //2秒自动切换图片

oDiv.onmouseover=function()
{
clearInterval(timer); //清除定时器
};

oDiv.onmouseout=function()
{
timer=setInterval(next,2000); //开启定时器
};
};

完整代码:
代码如下:




淘宝幻灯片上下滑动效果 —— www.zhinengshe.com —— 智能课堂



window.onload=function()
{
var oDiv=document.getElementById('play');
var aBtn=oDiv.getElementsByTagName('ol')[0].getElementsByTagName('li');
var oUl=oDiv.getElementsByTagName('ul')[0];
var now=0;

for(var i=0;i {
aBtn[i].index=i;
aBtn[i].onmouseover=function()
{
now=this.index; //当前值赋给now
tab();
}
};

function tab()
{
for(var i=0;i {
aBtn[i].className=''; //把所有按钮的样式清空
};
aBtn[now].className='active'; //当前按钮样式设置
startMove(oUl,{top:-150*now}); //用运动框架把UL的TOP设置为当前个数*-150,第三张图片就是2*-150
};

function next()
{
now++; //切换图片
if(now==aBtn.length) //如果到了最后一张图片
{
now=0; // 把图片拉回第一张
}
tab(); //把图片拉回第一张后继续运动
};

var timer=setInterval(next,2000); //2秒自动切换图片

oDiv.onmouseover=function()
{
clearInterval(timer); //清除定时器
};

oDiv.onmouseout=function()
{
timer=setInterval(next,2000); //开启定时器
};
};



  1. 1

  2. 2

  3. 3

  4. 4

  5. 5












  • 下载本文
    显示全文
    专题