基本信息
源码名称:旋转的Js图片矩阵
源码大小:5.85KB
文件格式:.txt
开发语言:js
更新时间:2015-08-12
   友情提示:(无需注册或充值,赞助后即可获取资源下载链接)

     嘿,亲!知识可是无价之宝呢,但咱这精心整理的资料也耗费了不少心血呀。小小地破费一下,绝对物超所值哦!如有下载和支付问题,请联系我们QQ(微信同号):813200300

本次赞助数额为: 1 元 
   源码介绍


旋转的Js图片矩阵

<!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=gb2312" />
<title>JS旋转图片阵效果-www.codefans.net by 斩梦人.天天 qq:22062019</title>
<style type="text/css">
body{background:black;color:white;font-family: Arial, Helvetica, sans-serif;font-size:16px;line-height:29px}
span{border:1px solid gray;background:#333;padding:4px;font-weight:bold;}
</style></head>
<body>
<span>使用方法</span>:<br>
首先定义一个imgRound类:<br>
<span>var rt = new imgRound("imgContainer", 120, 90, 500, 220, 230, 0.01)</span><br>
然后使用定时函数调用imgRound实例的roundMove方法:<br>
<span>setInterval(function(){rt.roundMove()}, 20)</span><br>
<script>
	window.onload=function(){
		var rt=new imgRound("imgContainer",120,90,300,80,230,0.01);
		setInterval(function(){rt.roundMove()},20)
	}
	function imgRound(id,w,h,x,y,r,dv,rh,ah){
		if (ah==undefined) ah=1;
		if (rh==undefined) rh=10;
		var dv=dv*ah; //旋转速度
		var pi=3.1415926575;
		var d=pi/2;
		var pd=Math.asin(w/2/r);
		var smove=true;
		var imgArr=new Array();
		var objectId=id;
		var o=document.getElementById(objectId);
		o.style.position="relative";
		var arrimg=o.getElementsByTagName("img");
		var pn=arrimg.length; //图片数量
		var ed=pi*2/pn;
		for (n=0;n<arrimg.length;n  ){
			var lk=arrimg[n].getAttribute("link");
			if (lk!=null) arrimg[n].setAttribute("title",lk)
			arrimg[n].onclick=function(){
				if (this.getAttribute("link")!=null){
					if (this.getAttribute("target")!="_blank") window.location=(this.getAttribute("link"))
					else window.open(this.getAttribute("link"))
				}
			}
			arrimg[n].onmouseout=function(){smove=true;}
			arrimg[n].onmouseover=function(){smove=false;}
			arrimg[n].style.position="absolute";
			imgArr.push(arrimg[n]);
		}
		
		this.roundMove=function(){
			for (n=0;n<=pn-1;n  ){
				var o=imgArr[n];
				var ta=Math.sin(d ed*n),strFilter;
				if (ta<0) o.style.left=Math.cos(d ed*n-pd)*r x "px";
				else o.style.left=Math.cos(d ed*n pd)*r x "px";
				o.style.top=ta*rh rh y "px";
				var zoom=Math.abs(Math.sin((d ed*n)/2 pi/4))*0.5 0.5;
				o.style.width=Math.abs(Math.cos(d ed*n pd)-Math.cos(d ed*n-pd))*zoom*r "px";
				o.style.height=zoom*h "px";
				if (ta<0) {ta=(ta 1)*80 20;o.style.zIndex=0;}
				else {ta=100;o.style.zIndex=1}
				if (o.style.zIndex<=0) strFilter="FlipH(enabled:true)"
				else strFilter="FlipH(enabled:false)";
				strFilter=strFilter " alpha(opacity=" ta ")";
				o.style.opacity=ta/100;
				o.style.filter=strFilter;
			}
			if (smove) d=d dv;
		}
	}
</script>
<div id="imgContainer" style="width:600px;height:300px;border:1px solid red">
<img src="http://www.codefans.net/jscss/demoimg/wall_s1.jpg"/>
<img src="http://www.codefans.net/jscss/demoimg/wall_s2.jpg"/>
<img src="http://www.codefans.net/jscss/demoimg/wall_s3.jpg"/>
<img src="http://www.codefans.net/jscss/demoimg/wall_s4.jpg" link="http://www.baidu.com" target="_blank"/>
<img src="http://www.codefans.net/jscss/demoimg/wall_s5.jpg" link="http://www.google.com"/>
<img src="http://www.codefans.net/jscss/demoimg/wall_s1.jpg"/>
<img src="http://www.codefans.net/jscss/demoimg/wall_s2.jpg"/>
<img src="http://www.codefans.net/jscss/demoimg/wall_s3.jpg"/>
</div>
参数说明: initRound(id,w,h,x,y,r,dv,rh,ah);<br>
id: 容器ID<br>
w: 图片宽度<br>
h: 图片高度<br>
x: 圆心水平位置<br>
y: 圆心垂直位置<br>
r: 圆圈半径<br>
dv: 旋转速度<br>
rh: 垂直距离 (可选,默认为10)<br>
ah: 旋转方向 (可选,1:顺时针,2:逆时针,默认为1)<br>
<body></html>



 // 根据车辆行驶方向来选择车辆图片
function GetVehicleImage(vid, direction)
{
    var i = parseInt(direction);
    var imgUrl = "Images/car/";//document.getElementById("hidCarImgUrl").value;
    var ret,src,w,h;
    if(i < 45)
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car0.gif";
        else
            src = imgUrl   "Car0_S.gif";
        w = 12;
        h = 32;
    }
    else if(i>=45 && i<90)
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car45.gif";
        else
            src = imgUrl   "Car45_S.gif";
        w = 26;
        h = 26;
    }
    else if(i>=90 && i<135)
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car90.gif";
        else
            src = imgUrl   "Car90_S.gif";
        w = 32;
        h = 12;
    }
    else if(i>=135 && i<180)
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car135.gif";
        else
            src = imgUrl   "Car135_S.gif";
        w = 26;
        h = 26;
    }
    else if(i>=180 && i<225)
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car180.gif";
        else
            src = imgUrl   "Car180_S.gif";
        w = 12;
        h = 32;
    }
    else if(i>=225 && i<270)
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car225.gif";
        else
            src = imgUrl   "Car225_S.gif";
        w = 26;
        h = 26;
    }
    else if(i>=270 && i<315)
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car270.gif";
        else
            src = imgUrl   "Car270_S.gif";
        w = 32;
        h = 12;
    }
    else if(i>=315 && i<360)
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car315.gif";
        else
            src = imgUrl   "Car315_S.gif";
        w = 26;
        h = 26;
    }
    else
    {
        if(vid == parseInt(g_mainTrackVehicle))
            src =  imgUrl   "Car0.gif";
        else
            src = imgUrl   "Car0_S.gif";
        w = 12;
        h = 32;
    }
    
    return src.toString()   ","   w.toString()   ","   h.toString();
}