Javascript实现图片轮播效果(二)图片序列节点的控制实现


Posted in Javascript onFebruary 17, 2016

推荐阅读:Jquery代码实现图片轮播效果(一)

在上篇文章给大家介绍了Javascript实现图片轮播效果(一)让图片跳动起来,这里我们实现图片序列节点的跳转实现.在图片跳转的同时,我们一般需要知道他跳转的是哪个位置,这里就是图片序列节点需要跟图片一同显示.下面我们就直接作分析.

在没讲正文之前先给大家展示效果图:

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();
}
}

这样我们就完成了第二步的效果.到此本文的全部叙述也就给大家介绍完了,希望对大家有所帮助。

Javascript 相关文章推荐
Javascript delete 引用类型对象
Nov 01 Javascript
node.js中的path.normalize方法使用说明
Dec 08 Javascript
js获取指定字符前/后的字符串简单实例
Oct 27 Javascript
使用Curl命令查看请求响应时间方法
Nov 04 Javascript
Javascript基础回顾之(二) js作用域
Jan 31 Javascript
jquery一键控制checkbox全选、反选或全不选
Oct 16 jQuery
bmob js-sdk 在vue中的使用教程
Jan 21 Javascript
webpack-dev-server自动更新页面方法
Feb 22 Javascript
vue中子组件传递数据给父组件的讲解
Jan 27 Javascript
vue.js指令v-for使用以及下标索引的获取
Jan 31 Javascript
解决vue单页面 回退页面 keeplive 缓存问题
Jul 22 Javascript
Vue Mint UI mt-swipe的使用方式
Jun 05 Vue.js
Bootstrap中CSS的使用方法
Feb 17 #Javascript
Javascript实现图片轮播效果(一)让图片跳动起来
Feb 17 #Javascript
基于javascript简单实现对身份证校验
Jan 25 #Javascript
使用jQuery判断Div是否在可视区域的方法 判断div是否可见
Feb 17 #Javascript
Bootstrap布局组件应用实例讲解
Feb 17 #Javascript
深入php面向对象、模式与实践
Feb 16 #Javascript
三个js循环的关键字示例(for与while)
Feb 16 #Javascript
You might like
php中批量替换文件名的实现代码
2011/07/20 PHP
PHP使用正则表达式清除超链接文本
2013/11/12 PHP
使用Modello编写JavaScript类
2006/12/22 Javascript
jQuery 动画弹出窗体支持多种展现方式
2010/04/29 Javascript
教你用AngularJS框架一行JS代码实现控件验证效果
2014/06/23 Javascript
Js实现网页键盘控制翻页的方法
2014/10/30 Javascript
使用Node.js实现HTTP 206内容分片的教程
2015/06/23 Javascript
JS判断当前页面是否在微信浏览器打开的方法
2015/12/08 Javascript
javascript显示倒计时控制按钮的简单实现
2016/06/07 Javascript
dul无法加载bootstrap实现unload table/user恢复
2016/09/29 Javascript
JavaScript 监控微信浏览器且自带返回按钮时间
2016/11/27 Javascript
js实现微信/QQ直接跳转到支付宝APP打开口令领红包功能
2018/01/09 Javascript
总结js函数相关知识点
2018/02/27 Javascript
js笔试题-接收get请求参数
2019/06/15 Javascript
JavaScript实现弹出窗口效果
2020/12/09 Javascript
下载糗事百科的内容_python版
2008/12/07 Python
使用Python的Tornado框架实现一个一对一聊天的程序
2015/04/25 Python
深入讲解Python中的迭代器和生成器
2015/10/26 Python
python 根据正则表达式提取指定的内容实例详解
2016/12/04 Python
python实现批量修改图片格式和尺寸
2018/06/07 Python
【python】matplotlib动态显示详解
2019/04/11 Python
500行Python代码打造刷脸考勤系统
2019/06/03 Python
Python空间数据处理之GDAL读写遥感图像
2019/08/01 Python
python  ceiling divide 除法向上取整(或小数向上取整)的实例
2019/12/27 Python
详解python常用命令行选项与环境变量
2020/02/20 Python
pycharm中如何自定义设置通过“ctrl+滚轮”进行放大和缩小实现方法
2020/09/16 Python
美国著名的家居用品购物网站:Bed Bath & Beyond
2018/01/05 全球购物
加拿大大码女装购物网站:Penningtons
2020/12/26 全球购物
争论的故事教学反思
2014/02/06 职场文书
关于保护环境的标语
2014/06/09 职场文书
2015国庆节66周年演讲稿
2015/03/20 职场文书
2015政治思想表现评语
2015/03/25 职场文书
党员转正申请报告
2015/05/15 职场文书
JavaScript实现外溢动态爱心的效果的示例代码
2022/03/21 Javascript
Spring Boot实现文件上传下载
2022/08/14 Java/Android
什么是clearfix (一文搞清楚css清除浮动clearfix)
2023/05/21 HTML / CSS