仿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>仿FLASH的图片轮换效果 —— www.miaov.com 妙味课堂</title>
<link rel="stylesheet" type="text/css" href="miao_style.css">
<script src="../move.js"></script>
<script>
function getByClass(oParent, sClass)
{
var aEle=document.getElementsByTagName(‘*‘);
var i=0;
var aResult=[];

for(i=0;i<aEle.length;i++)
{
if(aEle[i].className==sClass)
{
aResult.push(aEle[i]);
}
}

return aResult;
}

window.onload=function ()
{
var oDiv=document.getElementById(‘playeimages‘);
var oBtnPrev=getByClass(oDiv, ‘prev‘)[0];
var oBtnNext=getByClass(oDiv, ‘next‘)[0];
var oMarkLeft=getByClass(oDiv, ‘mark_left‘)[0];
var oMarkRight=getByClass(oDiv, ‘mark_right‘)[0];

var oSmallUl=getByClass(oDiv, ‘small_pic‘)[0].getElementsByTagName(‘ul‘)[0];
var aSmallLi=oSmallUl.getElementsByTagName(‘li‘);
var oBigUl=getByClass(oDiv, ‘big_pic‘)[0];
var aBigLi=oBigUl.getElementsByTagName(‘li‘);
var iNow=0;
var iMinZindex=2;
var i=0;

oSmallUl.style.width=aSmallLi.length*aSmallLi[0].offsetWidth+‘px‘;

//上面的左右按钮
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(i=0;i<aSmallLi.length;i++)
{
aSmallLi[i].index=i;
aSmallLi[i].onmouseover=function ()
{
startMove(this, ‘opacity‘, 100);
}
aSmallLi[i].onmouseout=function ()
{
if(this.index!=iNow)
{
startMove(this, ‘opacity‘, 60);
}
}

aSmallLi[i].onclick=function ()
{
if(this.index==iNow)return;
iNow=this.index;

tab();
}

function tab()
{
for(i=0;i<aSmallLi.length;i++)
{
startMove(aSmallLi[i], ‘opacity‘, 60);
}
startMove(aSmallLi[iNow], ‘opacity‘, 100);
aBigLi[iNow].style.zIndex=iMinZindex++;
aBigLi[iNow].style.height=0;

startMove(aBigLi[iNow], ‘height‘, oBigUl.offsetHeight);

if(iNow==0)
{
startMove(oSmallUl, ‘left‘, 0);
}
else if(iNow==aSmallLi.length-1)
{
startMove(oSmallUl, ‘left‘, -(iNow-2)*aSmallLi[0].offsetWidth);
}
else
{
startMove(oSmallUl, ‘left‘, -(iNow-1)*aSmallLi[0].offsetWidth);
}
}

oBtnPrev.onclick=function ()
{
iNow--;
if(iNow==-1)
{
iNow=aSmallLi.length-1;
}

tab();
}

oBtnNext.onclick=function ()
{
iNow++;
if(iNow==aSmallLi.length)
{
iNow=0;
}

tab();
}
}
}
</script>
</head>

<body>
<div id="playimages" class="play">
<ul class="big_pic">
<div class="prev"></div>
<div class="next"></div>

<div class="text">加载图片说明……</div>
<div class="length">计算图片数量……</div>

<a class="mark_left" href="javascript:;"></a>
<a class="mark_right" href="javascript:;"></a>
<div class="bg"></div>

<li style="z-index:1;"><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>
</ul>
<div class="small_pic">
<ul style="width:390px;">
<li style="filter: 100; opacity: 1;"><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>
</ul>
</div>
</div>

</body>
</html>

注意要点:

1css页面布局,将li叠放,position:absolute;left都是0.

2.图片之所以会有高度变化,是因为,li的高度是从0-390,li里面嵌套img,img的高度是固定不变的,这样的话,高度是变化的。

时间: 2024-11-25 11:01:22

仿flash的幻灯片轮播效果的相关文章

CSS3图片轮播效果

原文:CSS3图片轮播效果 在网页中用到图片轮播效果,单纯的隐藏.显示,那再简单不过了,要有动画效果,如果是自己写的话(不用jquery等),可能要费点时间.css3的出现,让动画变得不再是问题,而且简单易用.下面介绍我用css3与js写的一个图片轮播效果. 一般图片轮播就是三四张图片: <div class="wrap"> <div class="carousel"> <div><img src="http://

jQuery个性化图片轮播效果

购物产品展示:图片轮播器<效果如下所示> 思路说明: 每隔一段时间,实现图片的自动切换及选项卡选中效果 两个区域:   最外层容器区域,如上图红色线框矩形   选项卡区域 两个事件:    鼠标悬浮或鼠标划入mouseover    鼠标离开mouseleave /**大屏广告滚动样式**/ 1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF

网站——如何实现轮播效果

实现轮播效果需要运用到的知识: DOM操作 定时器 事件运用 Js动画 函数递归 无限滚动 原理:控制图片列表的“left”值来显示相应的图片 组成部分<div id="container">: <div id="list">//图片列表 <div id="list" style="left:-600px">//当图片的宽度全部为600px时 <img src=""

基本_移动类型轮播效果_框架

一.基本元素: D:display window;用户浏览的窗口: S:scroll window;存放内容的大容器:通过移动来改变显示的内容: C:content;内容信息: B:button;按钮,多种样式,可选: 二.思路: 通过移动S 的位置,由于C位于S中,所有的C将会同时跟随S而移动. 在D中显示的内容将会被改变. 三.html结构: 1 <div class=”D”> 2 <div class=”S”> 3 <div class=”C”>content&l

jQuery制作无缝轮播效果

[一]HTML结构 <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>jquery制作无缝轮播器</title> <script type="text/javascript" src="jquery-1.12.4.js"></script> &

js的轮播效果

图片的轮播效果!主要运用了元素的style样式属性,与 setInterval(); <!DOCTYPE html> <html> <head lang="en"> <meta charset="UTF-8"> <title></title> <style> *{ margin: 0; padding: 0; } div{ width: 960px; height: 400px; o

简单的一个轮播效果

刚刚学了Jquery,写了一个简单的图片滑动,但不是完成品. <!DOCTYPE html> <meta content="text/html" charset="utf-8"/><html><head> <title></title> <link href="css/lunbo.css" rel="stylesheet"/> <scri

调用MyFocus库,简单实现二十几种轮播效果

一.首先点击这里下载myFocus库文件,标准文件库就行了,很小仅仅1.4M. myFocus库有以下的好处: a . 文件小巧却高效强大,能够实现二十几种轮播的效果. b . 极其简单的使用,只需要调用就可以使用,下面会介绍方法. c . 灵活的设置,很多参数可以提供设置,比如不想要文字提示,设置高度为0....更多参数适用请见网站教程页面. 二.下载下来之后,解压,看到一个文件夹,如下图所示: 对此文件夹进行一下说明:a . 打开js文件夹,然后有个js文件,就是我们最开始要调用的myfoc

Android中使用ViewPager实现屏幕页面切换和页面轮播效果

之前关于如何实现屏幕页面切换,写过一篇博文<Android中使用ViewFlipper实现屏幕切换>,相比ViewFlipper,ViewPager更适用复杂的视图切换,而且Viewpager有自己的adapter,这也让其适应复杂对象,实现数据的动态加载. ViewPager是谷歌官方给我们提供的一个兼容低版本安卓设备的软件包,里面包囊了只有在安卓3.0以上可以使用的api.而viewpager就是其中之一,利用它,我们可以做很多事情,从最简单的导航,到页面菜单等等. 下面我们就展示下Vie