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 相关文章推荐
分享别人写的一个小型js框架
Aug 13 Javascript
jquery animate图片模向滑动示例代码
Jan 26 Javascript
JS正则表达式获取分组内容的方法详解
Nov 15 Javascript
js字符串截取函数substr substring slice使用对比
Nov 27 Javascript
深入理解JavaScript是如何实现继承的
Dec 12 Javascript
Jquery设置attr的disabled属性控制某行显示或者隐藏
Sep 25 Javascript
jQuery+Ajax+PHP弹出层异步登录效果(附源码下载)
May 27 Javascript
Node.js读取文件内容示例
Mar 07 Javascript
jQuery EasyUI tree增加搜索功能的实现方法
Apr 27 jQuery
windows实现npm和cnpm安装步骤
Oct 24 Javascript
微信小程序学习总结(一)项目创建与目录结构分析
Jun 04 Javascript
vue点击标签切换选中及互相排斥操作
Jul 17 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中利用str_pad函数生成数字递增形式的产品编号
2013/09/30 PHP
ThinkPHP自动转义存储富文本编辑器内容导致读取出错的解决方法
2014/08/08 PHP
php发送与接收流文件的方法
2015/02/11 PHP
PHP也能干大事之PHP中的编码解码详解
2015/04/20 PHP
修复ShopNC使用QQ 互联时提示100010 错误
2015/11/08 PHP
PHP打印输出函数汇总
2016/08/28 PHP
Laravel中基于Artisan View扩展包创建及删除应用视图文件的方法
2016/10/08 PHP
jquery 可拖拽的窗体控件实现代码
2010/03/21 Javascript
js判断undefined类型,undefined,null, 的区别详细解析
2013/12/16 Javascript
Node.js 制作实时多人游戏框架
2015/01/08 Javascript
纯javascript实现简单下拉刷新功能
2015/03/13 Javascript
javascript创建对象的几种模式介绍
2016/05/06 Javascript
Vue响应式原理详解
2017/04/18 Javascript
使用JS获取页面上的所有标签
2018/10/18 Javascript
小程序实现人脸识别功能(百度ai)
2018/12/23 Javascript
用node.js写一个jenkins发版脚本
2019/05/21 Javascript
vue 集成 vis-network 实现网络拓扑图的方法
2019/08/07 Javascript
antd的select下拉框因为数据量太大造成卡顿的解决方式
2020/10/31 Javascript
javascript this指向相关问题及改变方法
2020/11/19 Javascript
python基础教程之简单入门说明(变量和控制语言使用方法)
2014/03/25 Python
利用Python批量生成任意尺寸的图片
2016/08/29 Python
多版本Python共存的配置方法
2017/05/22 Python
Selenium控制浏览器常见操作示例
2018/08/13 Python
对django中render()与render_to_response()的区别详解
2018/10/16 Python
在Pycharm中将pyinstaller加入External Tools的方法
2019/01/16 Python
使用Template格式化Python字符串的方法
2019/01/22 Python
对python 通过ssh访问数据库的实例详解
2019/02/19 Python
python分布式计算dispy的使用详解
2019/12/22 Python
Tensorflow矩阵运算实例(矩阵相乘,点乘,行/列累加)
2020/02/05 Python
Python虚拟环境的创建和包下载过程分析
2020/06/19 Python
零基础学Python之前需要学c语言吗
2020/07/21 Python
湖南卫视在线视频媒体平台:芒果TV
2019/10/30 全球购物
党支部群众路线整改措施思想汇报
2014/10/10 职场文书
2014年银行员工工作总结
2014/11/12 职场文书
护理专业毕业自我鉴定
2019/08/12 职场文书
什么是求职信?求职信应包含哪些内容?
2019/08/14 职场文书