stop();
init();
function init() {
rotateDirection = "left";//默认向左旋转,即浏览右边的图片
imgSpeed = 8;//图片切换状态所花时间
rotateSpeed = 1500;//图片循环显示间隔时间3.5秒
imageWidth = 226;//图片宽度
imageHeight = 220;//图片高度
perWidth = imageWidth / 10;
perHeight = imageHeight / 10;
//centerX = Stage.width / 2 - 340 / 2;//舞台中央x坐标342
//centerY = Stage.height / 2 - 340 / 2;//舞台中央y坐标214
centerX=Stage.width/2
centerY=Stage.height/2
trace("centerX=" + centerX);
trace("centerY=" + centerY);
this.createEmptyMovieClip("imgHolder",1);//创建一个装图片的容器,并设置其深度索引为1
//imgHolder._x = centerX - 450;//-108
//imgHolder._y = centerY - 240;//-26
imgHolder._x=400;
imgHolder._y=245;
trace("imgHolder._x =" + imgHolder._x);
trace("imgHolder._y =" + imgHolder._y);
//每个位置图片的alpha
targetAlpha = [20,40, 60, 80, 100, 80, 60, 40,20];
//每个位置图片的x坐标
targetX=[-290,-257,-210,-125,0,158,292,388,467];
//每个位置图片y坐标
targetY = [imageHeight*0.4,imageHeight*0.3, imageHeight*0.2, imageHeight*0.1, 0, imageHeight*0.1, imageHeight*0.2, imageHeight*0.3,imageHeight*0.4];
//每个位置图片的缩放比例
targetScale = [20,40, 60, 80, 100, 80, 60, 40,20];
//每个位置图片的深度索引值
imageDepth = [0,80, 90, 110, 200, 112, 100,88, 0];
leftBtn.swapDepths(3000);
rightBtn.swapDepths(3001);
disable_btn.swapDepths(3002);
textVisible = [false,false, false, false, true, false, false, false, false];
totalNum = imgNum;
indexNum = 1;
disable_btn._visible = false;
disable_btn._width = Stage.width;
disable_btn._height = Stage.height;
disable_btn.onRollOver = function() {
this.useHandCursor = false;
leftBtn.gotoAndStop(1);
rightBtn.gotoAndStop(1);
}
for (var i = 0; i < totalNum; i++) {
imgHolder.attachMovie("img","img" + i,i + 10);//从库中取得一个元件并将其附加到影片剪辑中
var img = imgHolder["img" + i];//相当于as3中的imgHolder.getChildByName(String("img" + i));
img._alpha = 0;
img.desc_txt.text = img_name[i];
img.desc_txt._visible = false;//默认设置所有图片文字不显示
loadThumbs(thumb_image[i],img.thumbs);
}
imgHolder.img3.desc_txt._visible = true;//设置第三张图片文字显示,此处的img2是上面attachMovie里定义的实例名"img" + i
setMovie();//初始化图片位置及状态
}
//------------------------------------------------------------------------------@载入图片
function loadThumbs(linkUrl, movLoader) {
var imgLoader = new MovieClipLoader();
var obj = new Object();
obj.onLoadProgress = function(target, bytesLoaded, bytesTotal) {
pctLoaded = Math.floor(bytesLoaded / bytesTotal * 100);
target._parent.pBar_mc.gotoAndPlay(2);
if (!isNaN(pctLoaded)) {
if (pctLoaded >= 100) {
target._parent.pBar_mc.gotoAndPlay(2);
this.gotoAndPlay(2);
}
}
}
obj.onLoadError = function(target_mc, errorCode, httpStatus) {
}
obj.onLoadInit = function(target) {
new mx.transitions.Tween(target._parent.pBar_mc, "_alpha", mx.transitions.easing.Strong.easeOut, target._parent.pBar_mc._alpha, 0, 150, false);
//此处的target是thumbs容器,设置它的尺寸与图片尺寸一样
target._width = imageWidth;
target._height = imageHeight;
}
imgLoader.addListener(obj);
imgLoader.loadClip(linkUrl,movLoader);//载入图片
}
//------------------------------------------------------------------------------@初始化图片位置及状态
function setMovie() {
for (var i = 0; i < totalNum; i++) {
posNum = (indexNum + i) % totalNum;
var img = imgHolder["img" + i];
img._x = targetX[posNum];
img._y = targetY[posNum];
img._xscale = targetScale[posNum];
img._yscale = targetScale[posNum];
img._alpha = targetAlpha[posNum];
img.swapDepths(imageDepth[posNum]);
}
}
//------------------------------------------------------------------------------@图片状态改变
function rotateMovie() {
for (var i = 0; i < totalNum; i++) {
posNum = (indexNum + i) % totalNum;
//trace("indexNum="+indexNum);
//trace("posNum="+posNum);
var img = imgHolder["img" + i];
img.desc_txt._visible = textVisible[posNum];
img.swapDepths(imageDepth[posNum]);
var tween = new mx.transitions.Tween(img, "_x", mx.transitions.easing.Back.easeOut, img._x, targetX[posNum], imgSpeed, false);
new mx.transitions.Tween(img, "_y", mx.transitions.easing.Back.easeOut, img._y, targetY[posNum], imgSpeed, false);
new mx.transitions.Tween(img, "_xscale", mx.transitions.easing.Back.easeOut, img._xscale, targetScale[posNum], imgSpeed, false);
new mx.transitions.Tween(img, "_yscale", mx.transitions.easing.Back.easeOut, img._yscale, targetScale[posNum], imgSpeed, false);
new mx.transitions.Tween(img, "_alpha", mx.transitions.easing.Back.easeOut, img._alpha, targetAlpha[posNum], imgSpeed, false);
img.onRollOver=function(){
clearInterval(id);
}
img.onRollOut=function(){
id = setInterval(autoRotate, rotateSpeed);
}
img.onRelease = function() {
trace(img_name[this._name.substr(3)]);
}
}
}
//------------------------------------------------------------------------------@自动向左旋转
function autoRotate() {
leftBtn.gotoAndStop(1);
rightBtn.gotoAndStop(1);
//注意indexNum默认起始值是1
indexNum--;
if (indexNum == 0) {
indexNum = totalNum;
}
rotateMovie();
}
//------------------------------------------------------------------------------@上、下页按钮单击侦听
rightBtn.onRelease = function() {
indexNum++;
if (indexNum == totalNum) {
indexNum = 0;
}
rotateMovie();
}
leftBtn.onRelease = function() {
indexNum--;
if (indexNum == 0) {
indexNum = totalNum;
}
rotateMovie();
}
//------------------------------------------------------------------------------@上、下页按钮鼠标移入、出侦听
leftBtn.onRollOver = function() {
this.gotoAndStop(2);
clearInterval(id);
}
rightBtn.onRollOver = function() {
this.gotoAndStop(2);
clearInterval(id);
}
rightBtn.onRollOut = function() {
this.gotoAndStop(1);
rotateDirection = this._name.substr(0, 5).toString();
id = setInterval(autoRotate, rotateSpeed);
trace(rotateDirection);
}
leftBtn.onRollOut = function() {
this.gotoAndStop(1);
rotateDirection = this._name.substr(0, 4).toString();
id = setInterval(autoRotate, rotateSpeed);
trace(rotateDirection);
}
//------------------------------------------------------------------------------@计时器
id = setInterval(autoRotate, rotateSpeed);