<!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>
html,body,ul,img{margin:0;padding:0;color:#fff;}
body{background:#666;}
img{border:none;}
li{list-style:none;}
#playImages{width:400px;height:430px;background:#CCC;margin:50px auto;font:12px Arial;}
#big_images{width:400px;height:320px;position:relative;}
#big_images .prev,#big_images .next{position:absolute;top:131px;width:60px;height:58px; filter:alpha(opacity=0);opacity:0;z-index:101;}
#big_images .prev{left:10px;background:url(images/left_btn.jpg);}
#big_images .next{right:10px;background:url(images/right_btn.jpg);}
#big_images .mark{position:absolute;bottom:0;left:0;width:400px;height:30px;background:#000;filter:alpha(opacity=50);opacity:0.5;z-index:102;}
#big_images .text,#big_images .number{position:absolute;top:9px;z-index:102;}
#big_images .text{left:0;}
#big_images .number{right:0;} #big_images .mark_left,#big_images .mark_right{position:absolute;top:0;width:200px;height:320px;filter:alpha(opacity=0);opacity:0;cursor:pointer;z-index:100;}
#big_images .mark_left{left:0;}
#big_images .mark_right{right:0;}
#big_images li{width:400px;height:320px;overflow:hidden;position:absolute;}/*①*/
#big_images .active{z-index:1;}
#big_images img{width:400px;height:320px;} #small_images{width:400px;height:110px;position:relative;overflow:hidden;}
#small_images ul{position:absolute;height:110px;overflow:hidden;}
#small_images li{float:left;padding-top:7px;padding-left:10px;filter:alpha(opacity=30);opacity:0.3;}
#small_images img{width:120px;height:96px;}
#small_images .active{filter:alpha(opacity=100);opacity:1;} /*说明:①/*需要加上绝对定位后面使用z-index才生效,这里只有加上overflow,height下拉渐变效果才能显示出来,因为在运动的过程中height是一点点变的,其他的部分需要隐藏才能显示出下拉渐变这种效果*/
*/
</style>
<script src="move.js"></script>
<script>
function getClassName(oParent,sClass){
var aEle = oParent.getElementsByTagName('*');
var aResult = [];
for(var i=0;i<aEle.length;i++){
if(aEle[i].className == sClass){
aResult.push(aEle[i]);
}
}
return aResult;
} window.onload = function(){
var oDiv = document.getElementById('big_images');
var oBtnPrev = getClassName(oDiv,'prev')[0];
var oBtnNext = getClassName(oDiv,'next')[0];
var oMarkLeft = getClassName(oDiv,'mark_left')[0];
var oMarkRight = getClassName(oDiv,'mark_right')[0];
var bigUl = oDiv.getElementsByTagName('ul')[0];
var bigLi = bigUl.getElementsByTagName('li');
var oSmallDiv = document.getElementById('small_images');
var smallUl = oSmallDiv.getElementsByTagName('ul')[0];
var smallLi = oSmallDiv.getElementsByTagName('li'); var smallText = getClassName(oDiv,'text')[0];
var smallNumber = getClassName(oDiv,'number')[0];
var arrPicture =['图片一','图片号','图片3']; var iNow = 0;
var imageZindex = 2;
smallUl.style.width = (smallLi[0].offsetWidth*smallLi.length)+'px'; init();
var timer = null;
clearInterval(timer);
timer = setInterval(function(){
iNow++;
if(iNow == smallLi.length){
iNow = 0;
}
tab();
},3000);
//上面的左右按钮
oBtnPrev.onmouseover = oMarkLeft.onmouseover = function(){
startMove(oBtnPrev,'opacity',100); };
oBtnPrev.onmouseout = oMarkLeft.onmouseout = function(){
startMove(oBtnPrev,'opacity',0);
}; oBtnNext.onmouseover = oMarkRight.onmouseover = function(){
startMove(oBtnNext,'opacity',100);
};
oBtnNext.onmouseout = oMarkRight.onmouseout = function(){
startMove(oBtnNext,'opacity',0); };
for(var i=0;i<smallLi.length;i++){
smallLi[i].index = i;
smallLi[i].onmouseover = function(){
startMove(this,'opacity',100);
};
smallLi[i].onmouseout = function(){
if(this.index != iNow){
startMove(this,'opacity',30);
}
}; smallLi[i].onclick = function(){
if(iNow == this.index){
return;
}
iNow = this.index;
tab();
};
} oBtnPrev.onclick = function(){
iNow--;
if(iNow == -1){
iNow = smallLi.length-1;
}
tab();
}; oBtnNext.onclick = function(){
iNow++;
if(iNow == smallLi.length ){
iNow = 0;
}
tab();
}; function init(){
smallText.innerHTML = arrPicture[iNow%arrPicture.length];
smallNumber.innerHTML = iNow+1+'/'+smallLi.length;
} function tab(){ for(var j=0;j<smallLi.length;j++){
startMove(smallLi[j],'opacity',30);
bigLi[iNow].style.zIndex = 1;
}
startMove(smallLi[iNow],'opacity',100);
bigLi[iNow].style.zIndex = imageZindex++;
bigLi[iNow].style.height = 0;
startMove(bigLi[iNow],'height',320);
if(iNow ==0){
startMove(smallUl,'left',0);
}else if(iNow == smallLi.length-1){
startMove(smallUl,'left',-(iNow-2)*smallLi[0].offsetWidth)
}else{
startMove(smallUl,'left',-(iNow-1)*smallLi[0].offsetWidth);
}
init();
} }; </script>
</head> <body>
<div id='playImages'>
<div id='big_images'>
<span class='prev'></span>
<span class='next'></span>
<div class="mark">
<span class='text'>图片正在加载……</span>
<span class='number'>计算图片数量……</span>
</div>
<a class='mark_left' href='javascript:;'></a>
<a class='mark_right' href='javascript:;'></a>
<ul>
<li class='active'><img src = 'images/1.jpg'></li>
<li><img src = 'images/2.jpg'></li>
<li><img src = 'images/3.jpg'></li>
<li><img src = 'images/4.jpg'></li>
<li><img src = 'images/5.jpg'></li>
<li><img src = 'images/6.jpg'></li>
<li><img src = 'images/7.jpg'></li>
</ul>
</div>
<div id='small_images'>
<ul>
<li class ='active'><img src = 'images/1.jpg'></li>
<li><img src = 'images/2.jpg'></li>
<li><img src = 'images/3.jpg'></li>
<li><img src = 'images/4.jpg'></li>
<li><img src = 'images/5.jpg'></li>
<li><img src = 'images/6.jpg'></li>
<li><img src = 'images/7.jpg'></li>
</ul>
</div>
</div>
</body>
</html>

仿flash实现图片轮换播放的更多相关文章

  1. 仿FLASH的图片轮换效果

    css布局代码(test.css): body { background: #ccc;} ul { padding: 0; margin: 0;} li { list-style: none;} im ...

  2. JS 阶段练习~ 仿flash的图片轮换效果

    结合了所学的简单运动框架~  做这样一个综合小实例~~ -------------------------主要问题: 1.getByClassName  IE低版的兼容性 2.DOM不够严谨 … 各种 ...

  3. js图片轮换播放器

    <!DOCTYPE html> <html> <head> <title></title> <meta charset="u ...

  4. jQuery仿迅雷图片轮换效果

    jQuery仿迅雷图片轮换效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ...

  5. Jquery实现图片轮换效果

    最近在看jquery书时,看到一个比较有趣的东西:图片轮换.这里和大家分享下我看完后写的一个demo.实现图片轮换要完成三部分模块:html部分.css部分.jqury部分.下面分步详细说明.1.ht ...

  6. 基于jQuery仿Flash横向切换焦点图

    给各网友分享一款基于jQuery仿Flash横向切换焦点图.利用Flash可以制作很多漂亮的图片相册应用,今天我们要用jQuery来实现这样的效果.它是一款仿Flash的横向图片切换焦点图插件,可以自 ...

  7. salesforce 零基础学习(六十一)apex:component简单使用以及图片轮转播放的实现

    有的时候,我们项目有可能有类似需求:做一个简单的图像轮转播放功能,不同的VF页面调用可以显示不同的图片以及不同的图片描述.这种情况,如果在每个页面单独处理相关的图像轮转播放则显得代码特别冗余,此种情况 ...

  8. js实现图片向上播放(轮番滚动)

    js实现图片向上播放(轮番滚动) 实现方式,多种多样,这里我们来看javascript实现方式,重点是研究里面的源代码: 看看别人是如何写出“优雅的代码” <!DOCTYPE html PUBL ...

  9. JavaScript之图片轮换

    <!doctype html> <title>javascript图片轮换</title> <meta charset="utf-8"/& ...

随机推荐

  1. java和javac命令

    记录一下,今天无意中用到单独编译和执行某个java类,遇到各种Error: Could not find or load main class等问题,解决方案如下其中2和3选其一试试~ 1.javac ...

  2. Java IO: 序列化与ObjectInputStream、ObjectOutputStream

    作者:Jakob Jenkov  译者: 李璟(jlee381344197@gmail.com) 本小节会简要概括Java IO中的序列化以及涉及到的流,主要包括ObjectInputStream和O ...

  3. [LC] 191. Number of 1 Bits

    Write a function that takes an unsigned integer and return the number of '1' bits it has (also known ...

  4. [Python] Advanced features

    Slicing 12345 L[:10:2] # [0, 2, 4, 6, 8]L[::5] # 所有数,每5个取一个# [0, 5, 10, 15, 20, 25, 30, 35, 40, 45, ...

  5. drf中的jwt使用与手动签发效验

    jwt认证 1)session存储token,需要数据库参与,耗服务器资源.低效 2)缓存存token,需要缓存参与,高效,不易集群 3)客户端存token,服务器存签发与交易token的算法,高效, ...

  6. PHP导出excel文件的多种方式

    1.第一种实现的方法 set_time_limit(0); //逐条导出数据 ob_end_clean(); header("Content-type: application/vnd.ms ...

  7. 数据操作-apply函数族

    R 作为一种向量化的编程语言,一大特征便是以向量计算替代了循环计算,使效率大大提升.apply函数族正是为解决数据循环处理问题而生的 -- 面向不同数据类型,生成不同返回值的包含8个相关函数的函数族. ...

  8. Hadoop的存储架构介绍

    http://lxw1234.com/archives/2016/04/638.htm 该文章介绍了Hadoop的架构原理,简单易懂. 目前公司提供Hadoop的运算集群BMR,可以直接申请集群资源.

  9. python自动化测试技术-Allure

    文末有源码 大部分人可能做的是爬虫和web,数据分析方面的工作,今天分享个在自动化测试领域python能做什么样的事情,比如下方,是用python+pytest+allure生成的精美自动化测试报告, ...

  10. Autowired和Resource区别

    @Autowired和@Resource熟悉吧?是不是经常复制粘贴顺手就来,两者都是用来给成员变量自动装载,可是它俩到底有啥区别呢? 1.@Autowired与@Resource都可以用来装配bean ...