资源描述
图片过渡效果
本文介绍的这种动态切换图片效果,具有二十三种切换样式,并不是用动画软件制作的动画,而是用Javascript制作出来的效果,是 不是有点出乎你的意料。更值得一看的是它只用了廖廖几行程序代码,且变换的图片数量可以随意增加却不增加程序代码。你感到奇怪吗?继续往下看你就明白了。
制作思路:
给插入的图片加上一个ID(img1)号,以便 Javascript程序对其操作,再给图片加载一个CSS的动态滤镜revealTrans,然后用一小段Javascript程序定时不断地改变revealTrans滤镜的Transition参数值以获得不断地更换切换样式,同时通过程序不断地改变图像标记<img>的“src”(图片的地址)参数值,以获得更换图片的效果。
制作方法:
1、在网页中插入一张图片,给图片加上ID号为:img1,若改变ID号,那么在程序中也要作相应改变。再给图片加载一个revealTrans滤镜,完成后的图像标记<img>的完整代码如下:
<img id="img1" src="image/cssp1.jpg" width="200" height="134" style="filter:revealTrans(Transition=1,Duration=1.5)" >
滤镜中的Duration是控制切换时间(以秒计)的,本例设置的是1.5秒,若想使切换过程慢一些,可加大Duration参数的值。
2、在网页源代码的<head>与</head>之间插入下面这段Javascript程序代码:
<script language="JavaScript">
<!--
var k=0; //声明一个计数器变量
var imgname1="image/cssp"; //所有图片地址的前面相同的部分,要根据实际修改这个值。
var imgname2=".jpg"; //图片的文件格式,可根据实际情修改,前面那个小点不要漏了。
var imgnub=3; //要展示的图片的张数,根据实际修改此值。
function start(){ //程序主体部分
obj=eval("img1"); //若图像标记的ID号改变,请修改括号中的字符串值。
if (obj.filters.item(0).Transition==23) // 这部分语句是用于改变切换样式,在23种样式中循环。
obj.filters.item(0).Transition=1;
else
obj.filters.item(0).transition++;
obj.filters.item(0).Apply();
if (k<imgnub) {k++; //这部分语句用于改变图像标记的src的图片地址(既含路径的文件名)。
}else {k=1;
}
obj.src=imgname1+k+imgname2;
obj.filters.item(0).Play();
setTimeout("start(1)",3000); //每三秒钟刷新一次。
}
-->
</script>
若要让图片在切换后停留的时间长一点,可加大定时函数setTimeout中的定时数值(以毫秒计)。
3、在网页源代码的<body>标记中加上onload="start()"事件,以使得在网页载入时就显示动态切换效果。
至此,制作结束。是不是一点都不难?!但在实际制作时应注意以下几点:
1、所有图片的文件名和文件格式要统一,用序号区分,如本例所用图片的文件名(含相对路径)为:image/cssp1.jpg、image/cssp2.jpg、image/cssp3.jpg;
2、所有图片的大小最好要一致。若图片的大小不一致,虽不影响程序的运行,但在显示时,均以插入在网页上的那张图片的大小来显示,那么,大的图片将缩小显示,小的图片放大显示,影响效果。
3、在修改定时器函数setTimeout中的定时时间或修改CSS的revealTrans的切换时间Duration参数的值时,要使前者的时间大于后者的时间,否则,切换过程还没有完成就又开始下一过程了,从而使人无法看清楚图片。另外要注意,定时器是以毫秒为单位计时,而滤镜是以秒为单位计时。
图片滚动效果
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<TABLE style="BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 1px solid; BORDER-LEFT: #666666 1px solid; BORDER-BOTTOM: #666666 1px solid"
cellSpacing=0 cellPadding=0 width=550 align=center border=0>
<TBODY>
<TR>
<TD>
<DIV id=demo style="OVERFLOW: hidden; WIDTH: 100%; COLOR: #ffffff">
<TABLE cellSpacing=0 cellPadding=0 align=left border=0 cellspace="0">
<TBODY>
<TR>
<TD id=demo1 vAlign=top><table width="1730" height="16" border="0" align="left" cellpadding="0" cellspacing="0">
<tr align="center">
<td width='170'><a href=''><img src='images/img9.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href=''><img src='images/img1.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href='#'><img src='images/img2.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href='#'><img src='images/img3.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href='#'><img src='images/img4.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href='#'><img src='images/img5.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href='#'><img src='images/img6.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href='#'><img src='images/img7.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href='#'><img src='images/img8.jpg' width='170' height='100' border='0'></a></td>
<td width='170'><a href='#'><img src='images/img9.jpg' width='170' height='100' border='0'></a></td>
</tr>
</table></TD>
<TD id=demo2 vAlign=top> </TD></TR></TBODY></TABLE></DIV>
<SCRIPT>
var speed3=25//速度数值越大速度越慢
demo2.innerHTML=demo1.innerHTML
function Marquee(){
if(demo2.offsetWidth-demo.scrollLeft<=0)
demo.scrollLeft-=demo1.offsetWidth
else{
demo.scrollLeft++
}
}
var MyMar=setInterval(Marquee,speed3)
demo.onmouseover=function() {clearInterval(MyMar)}
demo.onmouseout=function() {MyMar=setInterval(Marquee,speed3)}
</SCRIPT>
</TD></TR></TBODY></TABLE></TD></TR></TABLE>
</body>
</html>
<table width=200><tr>
<td bgcolor="#738278" style="cursor:hand" onMouseOver="this.style.backgroundColor='red'" onMouseOut="this.style.background='#738278'">
移過來</td>
</tr></table>
<html>
<head>
<title>js改变背景图片</title>
<style>
#box{margin:0 auto; padding:0;}
#cont{width:500px; float:right;}
#cont ul{float:right;}
#cont li{border:1px solid #000000; float:left; list-style:none; margin-left:10px;}
#cont li img{cursor:pointer;}
</style>
<script language="javascript">
function showbg(){
var bgimg=event.srcElement //获得鼠标停止的对象
if(bgimg.tagName=="IMG"){ //假如是图片
xx.style.backgroundImage="url("+bgimg.src+")";
//改变背景图片
}
}
</script>
</head>
<body background="img/0.gif">
<table width="281" height="263" border="1" >
<tr>
<td id="xx"> </td>
</tr>
</table>
<div id="box">
<div id="cont"> <!--单击调用事件-->
<ul id="bgimg" onClick="showbg();">
<li><img src="images/img1.jpg" width="20" height="20" /></li>
<li><img src="images/img2.jpg" width="20" height="20" /></li>
<li><img src="images/img3.jpg" width="20" height="20" /></li>
<li><img src="images/img4.jpg" width="20" height="20" /></li>
<li><img src="images/img5.jpg" width="20" height="20" /></li>
<li><img src="images/img6.jpg" width="20" height="20" /></li>
</ul>
</div>
</div>
</body>
</html>
展开阅读全文