js实现非常简单的焦点图切换特效实例


Posted in Javascript onMay 07, 2015

本文实例讲述了js实现非常简单的焦点图切换特效的方法。分享给大家供大家参考。具体分析如下:

这是一个非常非常简单的焦点图(更像滑动门),可供初学者借鉴参考

<!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=gb2312" />
<title>无标题文档</title>
<style type="text/css">
* {margin:0;padding:0;}
ul, li {list-style:none;}
.mid {margin:0 auto;}
.area {
width:240px;height:270px;
overflow:hidden;background:#999;
margin-top:150px;position:relative;
}
#pic_list {
position:relative;
}
#pic_list li {
position:absolute;visibility:hidden;
}
#pic_list li.show {
visibility:visible;
}
#pic_list li img {
vertical-align:middle;
}
.button {
width:240px;height:20px;
line-height:20px;background:#ccc;
position:absolute;bottom:0px;
}
#button {
float:right;
}
#button li {
float:left;width:20px;height:20px;
text-align:center;margin:0 3px;
font-family:"Arial";font-size:12px;
color:#fff;background:#000;
}
#button li.current {
background:#f00;cursor:pointer;
}
</style>
</head>
<body>
<div class="area mid">
 <div id="imgbox" class="bbbb">
  <ul id="pic_list" class="aaaa">
   <li class="show" id="one">
   <img src="images/1317279971_77011100.jpg" width="240" />
   </li>
   <li id="two">
   <img src="images/1317279972_01691900.jpg" width="240" />
   </li>
   <li id="three">
   <img src="images/1317279973_69082200.jpg" width="240" />
   </li>
   <li id="four">
   <img src="images/1317281054_38572100.jpg" width="240" />
   </li>
   <li id="five">
   <img src="images/1317281056_61630800.jpg" width="240" />
   </li>
  </ul>
 </div>
 <div class="button" class="dddd">
  <ul id="button" class="cccc">
   <li class="current" id="but_one">1</li>
   <li id="but_two">2</li>
   <li id="but_three">3</li>
   <li id="but_four">4</li>
   <li id="but_five">5</li>
  </ul>
 </div>
</div>
<script type="text/javascript">
(function(){
var imgbox = document.getElementById("imgbox");
var pic_list = document.getElementById("pic_list");
var pics = pic_list.getElementsByTagName("li");
var button = document.getElementById("button").getElementsByTagName("li");
var p;
var start;
function autoplay(start){for(i=start;i<button.length;i++){
//设置起始值为start参数.
 (function(){
 var p=i;
 // 为p赋值i. i等于0,1,2,3,4;
 button[i].onmouseover=function change(){
 //button[0],button[1],button[2],button[3],button[4]
 //onmouseover可以触发函数;
 for(j=0;j<this.parentNode.childNodes.length;j++){
 //以this(当前触发事件的元素)为起点,的父节点的所有子节点
 //的length值为最高值,开始遍历. ;
 this.parentNode.childNodes[j].className="";
 //以this(当前触发事件的元素)为起点
 //的父节点的所有子节点的className为空. 危险慎用.;
  }
 this.className="current";
 //this. 即当前触发onmouseover的元素的className为"current";
 for(m=0;m<pics.length;m++){
 //以pics.length为最高值进行遍历.遍历pics.;
 pics[m].className="";
 //清空所有pics数组中所有元素的className;
 if (m==p){
 //当m==p (p==i) 所以m=i时,触发下列函数
  pics[m].className="show";
  //pics的第m个元素的className值为show; m在这里等于i;
  }
 }
 }
 })();
 }
}
autoplay(0);
})();
</script>
</body>
</html>

希望本文所述对大家的javascript程序设计有所帮助。

Javascript 相关文章推荐
Add a Formatted Table to a Word Document
Jun 15 Javascript
jQuery EasyUI API 中文文档 - ComboBox组合框
Oct 07 Javascript
jquery getScript动态加载JS方法改进详解
Nov 15 Javascript
ExtJS4 表格的嵌套 rowExpander应用
May 02 Javascript
jquery实现滑动特效代码
Aug 10 Javascript
详解JavaScript中Hash Map映射结构的实现
May 21 Javascript
Vue 过渡(动画)transition组件案例详解
Jan 22 Javascript
Javascript中 toFixed四舍六入方法
Aug 21 Javascript
VUE2.0 ElementUI2.0表格el-table自适应高度的实现方法
Nov 28 Javascript
详解使用webpack+electron+reactJs开发windows桌面应用
Feb 01 Javascript
vue中使用vee-validator完成表单校验方案
Nov 01 Javascript
javascript实现智能手环时间显示
Sep 18 Javascript
jQuery中closest和parents的区别分析
May 07 #Javascript
js实现键盘上下左右键选择文字并显示在文本框的方法
May 07 #Javascript
基于jQuery.Hz2Py.js插件实现的汉字转拼音特效
May 07 #Javascript
JavaScript更改字符串的大小写
May 07 #Javascript
JQUERY简单按钮轮换选中效果实现方法
May 07 #Javascript
JS基于面向对象实现的放烟花效果
May 07 #Javascript
jquery中trigger()无法触发hover事件的解决方法
May 07 #Javascript
You might like
php url地址栏传中文乱码解决方法集合
2010/06/25 PHP
PHP中判断变量为空的几种方法分享
2013/08/26 PHP
3个PHP多维数组转为一维数组的方法实例
2014/03/13 PHP
laravel实现按月或天或小时统计mysql数据的方法
2019/10/09 PHP
js利用与或运算符优先级实现if else条件判断表达式
2010/04/15 Javascript
『JavaScript』限制Input只能输入数字实现思路及代码
2013/04/22 Javascript
纯JS实现根据CSS的class选择DOM
2014/03/22 Javascript
JavaScript中使用自然对数ln的方法
2015/06/14 Javascript
关于function类中定义变量this的简单说明
2016/05/28 Javascript
浅谈javascript中new操作符的原理
2016/06/07 Javascript
jquery实现页面加载效果
2017/02/21 Javascript
ES6中javascript实现函数绑定及类的事件绑定功能详解
2017/11/08 Javascript
浅析vue中的MVVM实现原理
2019/03/04 Javascript
详解微信小程序工程化探索之webpack实战
2020/04/20 Javascript
Vue-Ant Design Vue-普通及自定义校验实例
2020/10/24 Javascript
JavaScript实现随机点名小程序
2020/10/29 Javascript
python读取Android permission文件
2013/11/01 Python
python连接MySQL、MongoDB、Redis、memcache等数据库的方法
2013/11/15 Python
python中redis查看剩余过期时间及用正则通配符批量删除key的方法
2018/07/30 Python
python自制包并用pip免提交到pypi仅安装到本机【推荐】
2019/06/03 Python
如何使用Python调整图像大小
2020/09/26 Python
澳大利亚优质葡萄酒专家:Vintage Cellars
2019/01/08 全球购物
俄罗斯护发和专业化妆品购物网站:Hihair
2019/09/28 全球购物
硕士研究生个人求职信
2013/12/04 职场文书
《黄河颂》教学反思
2014/02/07 职场文书
环保建议书200字
2014/05/14 职场文书
新兵入伍心得体会
2014/09/04 职场文书
班主任开场白
2015/06/01 职场文书
2015年大学迎新晚会总结
2015/07/16 职场文书
教学副校长工作总结
2015/08/13 职场文书
婚前协议书怎么写,才具有法律效力呢 ?
2019/06/28 职场文书
python实现批量提取指定文件夹下同类型文件
2021/04/05 Python
JS Canvas接口和动画效果大全
2021/04/29 Javascript
使用golang编写一个并发工作队列
2021/05/08 Golang
mysql 8.0.24 安装配置方法图文教程
2021/05/12 MySQL
浅谈redis的过期时间设置和过期删除机制
2022/03/18 MySQL