仿flash实现图片轮换播放
<!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实现图片轮换播放的更多相关文章
- 仿FLASH的图片轮换效果
css布局代码(test.css): body { background: #ccc;} ul { padding: 0; margin: 0;} li { list-style: none;} im ...
- JS 阶段练习~ 仿flash的图片轮换效果
结合了所学的简单运动框架~ 做这样一个综合小实例~~ -------------------------主要问题: 1.getByClassName IE低版的兼容性 2.DOM不够严谨 … 各种 ...
- js图片轮换播放器
<!DOCTYPE html> <html> <head> <title></title> <meta charset="u ...
- jQuery仿迅雷图片轮换效果
jQuery仿迅雷图片轮换效果 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "ht ...
- Jquery实现图片轮换效果
最近在看jquery书时,看到一个比较有趣的东西:图片轮换.这里和大家分享下我看完后写的一个demo.实现图片轮换要完成三部分模块:html部分.css部分.jqury部分.下面分步详细说明.1.ht ...
- 基于jQuery仿Flash横向切换焦点图
给各网友分享一款基于jQuery仿Flash横向切换焦点图.利用Flash可以制作很多漂亮的图片相册应用,今天我们要用jQuery来实现这样的效果.它是一款仿Flash的横向图片切换焦点图插件,可以自 ...
- salesforce 零基础学习(六十一)apex:component简单使用以及图片轮转播放的实现
有的时候,我们项目有可能有类似需求:做一个简单的图像轮转播放功能,不同的VF页面调用可以显示不同的图片以及不同的图片描述.这种情况,如果在每个页面单独处理相关的图像轮转播放则显得代码特别冗余,此种情况 ...
- js实现图片向上播放(轮番滚动)
js实现图片向上播放(轮番滚动) 实现方式,多种多样,这里我们来看javascript实现方式,重点是研究里面的源代码: 看看别人是如何写出“优雅的代码” <!DOCTYPE html PUBL ...
- JavaScript之图片轮换
<!doctype html> <title>javascript图片轮换</title> <meta charset="utf-8"/& ...
随机推荐
- [LC] 70. Climbing Stairs
You are climbing a stair case. It takes n steps to reach to the top. Each time you can either climb ...
- [LC] 54. Spiral Matrix
Given a matrix of m x n elements (m rows, n columns), return all elements of the matrix in spiral or ...
- R语言的xtabs函数
今天在做一个列联表独立性检验的时候,总是无法处理好要求的数据类型,偶然的机会,看到了xtabs()函数,感觉很适合用来做列联表,适合将一列数据转换成列联表. shifou <- c(" ...
- linux安装fasttext报错,升级gcc后成功解决
首先说一下存在问题: 本人打算在linux安装一个fasttext用来训练词向量,本来是想要从gensim来调用fasttext的,但是加载大的本地txt一直不对,没办法了只好在linux安装一个fa ...
- Linux的date用法
显示时间是个常用的命令,在写shell脚本中也经常会用到与日期相关文件名或时间显示.无论是linux还是windows下都是date命令. Linux下date命令用法 date [OPTION]… ...
- 接轨国际,碰撞更多科研火花——第八届ChinaSys大会专访微软亚洲研究院首席研究员张霖涛
作者:微软亚洲研究院实习生 徐祎雪 卢思奇 2015年6月5日至6日,由中国科学院深圳先进技术研究院先进计算与数字工程研究所主办的第八届中国计算机系统(ChinaSys)学术研讨会在厦门大学召开.来自 ...
- js数组中重复的对象去重
var arr = [{ "name": "ZYTX", "age": "Y13xG_4wQnOWK1QwJLgg11d0pS4h ...
- drbd配置
DRBD就是网络RAID1,可以通过网络同步两个主机上的硬盘,drbd每次只允许对一个节点进行读写访问. 一.安装DRBD CentOS 6.x rpm -ivh http://www.elrepo. ...
- array, matrix, list and dataframe
总结一下"入门3R"(Reading, 'Riting, 'Rrithmetic)中的读和写,不同的数据结构下的读写还是有点区别的. vector 命名 12 month.days ...
- 【转载】java 获取路径的各种方法
转载只供个人学习参考,查看请前往原出处:http://www.cnblogs.com/guoyuqiangf8/p/3506768.html 主要方法有: (1).request.getRealPat ...