本代码来自于懒人图库,本站只是对其代码进行分析并解释,并标注了源代码的来源,本次是对纵向的相册效果进行分析.
注明:源文件来源于懒人图库(便于代码简洁,去除了部分懒人的ad)
<!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=gbk" />
<title>纵向的JS相册效果</title>
<style>
body {background:#000000;margin:20px 0;font:12px Verdana, Arial, Tahoma;text-align:center;vertical-align:middle;color:#FFFFFF}
img {border:none}
.txt_1 {font:bold 24px Verdana, Tahoma;color:#fff}
img.thumb_img {cursor:pointer;display:block;margin-bottom:10px}
img#main_img {cursor:pointer;display:block;}
#gotop {cursor:pointer;display:block;}
#gobottom {cursor:pointer;display:block;}
#showArea {height:355px;margin:10px;overflow:hidden}
.info {color:#666;font:normal 9px Verdana;margin-top:20px}
.info a:link, .info a:visited {color:#666;text-decoration:none}
.info a:hover {color:#fff;text-decoration:none}
</style>
</head>
<body>
<table width="760" border="0" align="center" cellpadding="0" cellspacing="5">
<tr>
<td height="75" colspan="2" align="left" class="txt_1">纵向的JS相册效果</td><!--<网站制作学习网Foasp.cn>-->
</tr>
<tr>
<td width="640" align="center"><img src="images/03.jpg" URL width="640" height="400" border="0" id="main_img" rel="images/03.jpg" link="URL" /><!--这是展示整个大图--></td>
<td width="110" align="center" valign="top">
<img src="images/gotop.gif" width="100" height="14" id="gotop" /><!--上边的按钮-->
<div id="showArea">
<img src="images/01.jpg" width="80" height="50" border="0" class="thumb_img" rel="images/01.jpg" link="URL" />
......省略n个图片
<img src="images/02.jpg" width="80" height="50" border="0" class="thumb_img" rel="images/02.jpg" link="URL" /><!--设置rel后图片可以有link的连接,点击直接跳转-->
</div>
<img src="images/gobottom.gif" width="100" height="14" id="gobottom" /><!--下边的按钮--></td>
</tr>
</table>
</body>
</html>
<script language="javascript" type="text/javascript">
function $(e) {return document.getElementById(e);}//定义获取通过对象
document.getElementsByClassName = function(cl) {//定义document的通过ClassName来获得对象数组
var retnode = [];//定义空数组
var myclass = new RegExp(cl);//通过正则上面传来的cl值来判断对象
var elem = this.getElementsByTagName('*');
for (var i = 0; i < elem.length; i++) {
var classes = elem[i].className;//如果classname符合正则则添加到定义的空数组
if (myclass.test(classes)) retnode.push(elem[i]);
}
return retnode;//最后返回数组
}
var MyMar;
var speed = 1; //速度,越大越慢
var spec = 1; //每次滚动的间距, 越大滚动越快
var ipath = 'images/'; //图片路径
var thumbs = document.getElementsByClassName('thumb_img');//获取以"thumb_img"的数组
for (var i=0; i<thumbs.length; i++) {
thumbs[i].onmouseover = function () {$('main_img').src=this.rel; $('main_img').link=this.link;};//循环对对象进行附加事件
thumbs[i].onclick = function () {location = this.link}
}
$('main_img').onclick = function () {window.open(this.link);}//对中间的大图进行附加事件
$('gotop').onmouseover = function() {this.src = ipath + 'gotop2.gif'; MyMar=setInterval(gotop,speed);}
$('gotop').onmouseout = function() {this.src = ipath + 'gotop.gif'; clearInterval(MyMar);}
$('gobottom').onmouseover = function() {this.src = ipath + 'gobottom2.gif'; MyMar=setInterval(gobottom,speed);}
$('gobottom').onmouseout = function() {this.src = ipath + 'gobottom.gif'; clearInterval(MyMar);}
function gotop() {$('showArea').scrollTop-=spec;}//设定鼠标移动到上下按钮时,图片的整体滚动<网站制作学习网Foasp.cn>
function gobottom() {$('showArea').scrollTop+=spec;}
</script>
中国足彩网信息请查看IT技术专栏