Javascript实现图片轮播效果(二)图片序列节点的控制实现
作者:bea
推荐阅读:Jquery代码实现图片轮播效果(一) 在上篇文章给大家介绍了Javascript实现图片轮播效果(一)让图片跳动起来,这里我们实现图片序列节点的跳转实现.在图片跳转的同时,我们一般需要知道他跳转的是哪个位置,这里就是图片序列节点需要跟图片一同显示.下面我们就直接作分析. 在没讲正文之前先给大家展示效果图: 在HTML,CSS代码结构中我们需要加入一个图片序列是否选中的样式 #slider ol li a.active{background-color: #
推荐阅读:Jquery代码实现图片轮播效果(一)
在上篇文章给大家介绍了Javascript实现图片轮播效果(一)让图片跳动起来,这里我们实现图片序列节点的跳转实现.在图片跳转的同时,我们一般需要知道他跳转的是哪个位置,这里就是图片序列节点需要跟图片一同显示.下面我们就直接作分析.
在没讲正文之前先给大家展示效果图:
在HTML,CSS代码结构中我们需要加入一个图片序列是否选中的样式
#slider ol li a.active{
background-color: #ffffff;
color: #ff0000;
}
JS代码中我们需要对上一篇文章的JS代码做一些改变和增加,这里首先要改变的是将跳转的代码做一次封装,封装到一个方法中,然后返回setInterval的值.这个主要是为序列节点实现一些功能.
然后在跳转代码中,改变相应的序列节点的样式,为了能够展示跳转的位置.
//图片节点
var slider = document.getElementById("slider");
var imgul = slider.getElementsByTagName("ul")[0];
var imglis = imgul.getElementsByTagName("li");
var len = imglis.length;
//图片序列节点
var numol = slider.getElementsByTagName("ol")[0];
var numlinks = numol.getElementsByTagName("a");
//共享序列
var index = 0;
//图片跳转,图片跳转的同时,改变序列节点的跳转
var jump = function () {
return setInterval(function(){
if(index >= len){
index = 0;
}
//图片跳转
imgul.style.left = - (800 * index) + "px";
//改变序列节点样式:首先要清除所有的链接的样式,然后在激活对应的序列节点样式
for (var i = 0; i < len; i++) {
numlinks[i].setAttribute("class","");
}
numlinks[index].setAttribute("class","active");
index++;
},2000);
};
var jumpindex = jump();
这里还需要加入序列节点的hover状态下的控制.
hover后图片跳转应该停止,应停留在hover下的图片展示这里序列节点的数目与图片的数目是相对应的,因此可以通过当前序列节点所在的位置来改变其他的状态.
当鼠标离开序列节点后,应当让图片继续自动跳转.
//增加序列节点的hover控制: 1. hover后要禁止图片的跳转,显示在当前的图片上,这里就需要清除跳转 2.hover离开后,在当前的图片上做图片的跳转
for (var i = 0; i < len; i++){
//hover
numlinks[i].onmouseover = function () {
clearInterval(jumpindex);
for (var i = 0; i < len; i++) {
numlinks[i].setAttribute("class","");
if (numlinks[i] === this){
index = i;
}
}
imgul.style.left = - (800 * index) + "px";
numlinks[index].setAttribute("class","active");
}
//out
numlinks[i].onmouseout = function(){
jumpindex = jump();
}
}
这样我们就完成了第二步的效果.到此本文的全部叙述也就给大家介绍完了,希望对大家有所帮助。
猜你喜欢
您可能感兴趣的文章:
- Bootstrap入门书籍之(五)导航条、分页导航
- Bootstrap入门书籍之(四)菜单、按钮及导航
- Bootstrap入门书籍之(三)栅格系统
- Bootstrap入门书籍之(一)排版
- Bootstrap入门书籍之(零)Bootstrap简介
- 分享自己用JS做的扫雷小游戏
- javascript瀑布流布局实现方法详解
- 给angular加上动画效遇到的问题总结
- 基于jQuery实现的无刷新表格分页实例
- nodejs修复ipa处理过的png图片
- jQuery实现伪分页的方法分享
- jQuery simplePage+AJAX plus分页插件用法实例
- DeviceOne 让你一见钟情的App快速开发平台
- 纯JavaScript代码实现文本比较工具
- JavaScript实现身份证验证代码
- AngularJS 最常用的功能汇总
- AngularJS身份验证的方法
- 基于AngularJS+HTML+Groovy实现登录功能
- 实例讲解jquery中mouseleave和mouseout的区别