JS图片轮播与索引变色功能实例详解


Posted in Javascript onJuly 06, 2017

废话不多说了,直接给大家贴代码了,具体代码如下所示:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
#tupian{ width:290px; height:160px; border:#0F9 solid 1px}
.tp{ width:220px; height:160px; float:left}
.li{ margin-top:10px;list-style:none; border:#00F solid 1px; width:20px;}
</style>
</head>
<body>
 <div id="tupian">
   <div class="tp" onmouseover="sbfs()" onmouseout="jixu()"><img src="../../项目素材/图片/84372.jpg" /></div>
   <div class="tp" onmouseover="sbfs()" onmouseout="jixu()" style="display:none" ><img src="../../项目素材/图片/84610.jpg" /></div>
   <div class="tp" onmouseover="sbfs()" onmouseout="jixu()" style="display:none"><img src="file:///C|/Users/gaofangquan/Desktop/项目素材/图片/84246.jpg" /></div>
   <div class="tp" onmouseover="sbfs()" onmouseout="jixu()" style="display:none"><img src="../../项目素材/图片/84639 (1).jpg" /></div>
   <div id="xuanxiang" style="float:right; ">
   <ul>
    <li class="li" onmouseover="xz(this),xuanzhong(this)" onmouseout="shuzilikai()">1</li>
    <li class="li" onmouseover="xz(this),xuanzhong(this)" onmouseout="shuzilikai()">2</li>
    <li class="li" onmouseover="xz(this),xuanzhong(this)" onmouseout="shuzilikai()">3</li>
    <li class="li" onmouseover="xz(this),xuanzhong(this)" onmouseout="shuzilikai()">4</li>
   </ul>
   </div>
 </div>
</body>
<script type="text/jscript">
var aaaa=document.getElementsByClassName("tp")
var bbb=document.getElementsByClassName("li")
var index=0;
lunbo();
function lunbo(){
 xianshi();
 if( index<aaaa.length-1){
  index++;}
  else{index=0;}}
 var a=window.setInterval("lunbo()",1000)
    //图片与数列的背景同时变化
 function xianshi(){
  for( var i=0;i<aaaa.length;i++){
   aaaa[i].style.display="none"
   bbb[i].style.backgroundColor="white"}
   aaaa[index].style.display="block"
   bbb[index].style.backgroundColor="red"}
 //鼠标放在数列上背景变色<br>function xz(n){
 var b=document.getElementsByClassName("li")
 for( var i=0; i<b.length; i++){
  b[i].style.backgroundColor="white"}
  n.style.backgroundColor="red"}
  //当鼠标放到图片上的时候,图片停止轮播
function sbfs(){
 window.clearInterval(a)}  
 //当鼠标离开图片的时候,轮播继续 
function jixu(){
  a=window.setInterval("lunbo()",1000);}
 //鼠标放上,图片与相对应的li的值得索引显示出来  
function xuanzhong(m){
 var ccc=document.getElementsByClassName("tp")
 index=m.innerHTML-1;// 因为m.innerhtml 获取的时数列li的值,比ccc的索引大1,所以应该减去1;
       //把获取的值赋给index是因为如果重新定义一个变量的话,当鼠标离开li的时候,图片轮播的索引很乱,
  for( var i=0;i<ccc.length;i++){
   ccc[i].style.display="none"}
   ccc[index].style.display="block"
   window.clearInterval(a)}
 //鼠标离开让图片自动切换  
function shuzilikai(){
 a=window.setInterval("lunbo()",1000)}
</script>
</html>

 1、js图片轮播首先要先获取所有图片的对象,用数组接受,然后定义一个变量作为数组的索引。

    2、让图片显示(先让所有的图片隐藏,再让当前图片显示),索引自增1。注意:在写定时器的时候可以写延时的也可以写间歇的。在这里我写间歇的。

    3、鼠标放在图片上停止轮播,这里我们可以清除定时器window.clearInterval(a);鼠标离开图片轮播继续再重新启动定时器a=window.setInterval("lunbo()",1000),这里注意要给定时器定义一个值,因为清除定时器要用。

    4、鼠标放上,图片与相对应的li的值得索引显示出来,让获取的数列的值赋给数组的索引(index=m.innerHTML-1),因为m.innerhtml 获取的时数列li的值,比数组的索引大1,所以应该减去1;

以上所述是小编给大家介绍的JS图片轮播与索引变色功能实例详解,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

Javascript 相关文章推荐
通用JS事件写法实现代码
Jan 07 Javascript
jquery将一个表单序列化为一个对象的方法
Jan 03 Javascript
jQuery调用RESTful WCF示例代码(GET方法/POST方法)
Jan 26 Javascript
js获取下拉列表的值和元素个数示例
May 07 Javascript
javascript的switch用法注意事项分析
Feb 02 Javascript
JS+Canvas 实现下雨下雪效果
May 18 Javascript
js判断radiobuttonlist的选中值显示/隐藏其它模块的实现方法
Aug 25 Javascript
可输入文字查找ajax下拉框控件 ComBox的实现方法
Oct 25 Javascript
使用contextMenu插件实现Bootstrap table弹出右键菜单
Feb 20 Javascript
JavaScript中object和Object的区别(详解)
Feb 27 Javascript
详解Vue爬坑之vuex初识
Jun 14 Javascript
jquery tmpl模板(实例讲解)
Sep 02 jQuery
jQuery+ajax实现修改密码验证功能实例详解
Jul 06 #jQuery
vue2.0 keep-alive最佳实践
Jul 06 #Javascript
angular框架实现全选与单选chekbox的自定义
Jul 06 #Javascript
详解Angular Reactive Form 表单验证
Jul 06 #Javascript
让div运动起来 js实现缓动效果
Jul 06 #Javascript
老生常谈Bootstrap媒体对象
Jul 06 #Javascript
jQuery实现选中行变色效果(实例讲解)
Jul 06 #jQuery
You might like
php查看session内容的函数
2008/08/27 PHP
PHP遍历文件夹与文件类及处理类用法实例
2014/09/23 PHP
ThinkPHP2.x防范XSS跨站攻击的方法
2015/09/25 PHP
PHP设计模式之装饰器模式实例详解
2018/02/07 PHP
PHP实现负载均衡的加权轮询方法分析
2018/08/22 PHP
php web环境和命令行环境下查找php.ini的位置
2019/07/17 PHP
js wmp操作代码小结(音乐连播功能)
2008/11/08 Javascript
jquery入门—数据删除与隔行变色以及图片预览
2013/01/07 Javascript
JavaScript插件化开发教程 (二)
2015/01/27 Javascript
.NET微信公众号开发之创建自定义菜单
2015/07/16 Javascript
更高效的使用JQuery 这里总结了8个小技巧
2016/04/13 Javascript
Vue 实现双向绑定的四种方法
2018/03/16 Javascript
vue2.0 使用element-ui里的upload组件实现图片预览效果方法
2018/09/04 Javascript
使用vue点击li,获取当前点击li父辈元素的属性值方法
2018/09/12 Javascript
基于vue-upload-component封装一个图片上传组件的示例
2018/10/16 Javascript
vue.js实现的全选与全不选功能示例【基于elementui】
2018/12/03 Javascript
Element-ui自定义table表头、修改列标题样式、添加tooltip、:render-header使用
2019/04/11 Javascript
详解js常用分割取字符串的方法
2019/05/15 Javascript
解决layui数据表格Date日期格式的回显Object的问题
2019/09/19 Javascript
JS实现轮播图效果
2020/01/11 Javascript
微信小程序自定义纯净模态框(弹出框)的实例代码
2020/03/09 Javascript
vue 百度地图(vue-baidu-map)绘制方向箭头折线实例代码详解
2020/04/28 Javascript
[46:44]DOTA2-DPC中国联赛 正赛 Ehome vs PSG.LGD BO3 第二场 3月7日
2021/03/11 DOTA
python逐行读取文件内容的三种方法
2014/01/20 Python
从零学python系列之教你如何根据图片生成字符画
2014/05/23 Python
使用Python写CUDA程序的方法
2017/03/27 Python
pandas把dataframe转成Series,改变列中值的类型方法
2018/04/10 Python
Python操作word常见方法示例【win32com与docx模块】
2018/07/17 Python
python爬取内容存入Excel实例
2019/02/20 Python
在Python3 numpy中mean和average的区别详解
2019/08/24 Python
Xadmin+rules实现多选行权限方式(级联效果)
2020/04/07 Python
竞选文艺委员演讲稿
2014/04/28 职场文书
公务员诚信承诺书
2014/05/26 职场文书
老人与海读书笔记
2015/06/26 职场文书
回复函范文
2015/07/14 职场文书
2016秋季小学开学寄语
2015/12/03 职场文书