网页教学网
 当前位置: 网页教学网 >> 动画制作 >> Flash action技术 >> Flash AS教程:图片展览滚动视觉特效
[ HTML ] [ FW ] [ DW ] [ FP ] [ JS ] [ XML ] [ CSS ] [ 图象 ] [ FLASH ] [ .NET ] [ ASP ] [ JSP ] [ PHP ] [ 数据 ] [ 系统 ] [ 安全 ] [ 素材 ] [ 建站 ] [ 主机 ] [ 入门 ] [ 技巧 ]

Flash AS教程:图片展览滚动视觉特效

http://www.webjx.com  更新日期:2007-10-08 22:33  出处:love黄家驹的博客  作者:love黄家驹

制作思路:
             (1):构建好XML文件,进行载入判断,取得xml节点
             (2):在一个大的影片剪辑内,进行复制要加载图片的影片剪辑,按X轴方向水平排列
             (3):使用[被遮照的影片剪辑.setMask(遮照的影片剪辑)] 创建遮照效果
             (4):滚动区域的判断

演示效果。不提供在线演示了!

Flash AS教程:图片展览滚动视觉特效

点击这里下载源文件(注意:下载包里包括SWF,FLA,图片和as文件,要把as文件和SWF放在同一个目录下才能观看到效果)

stop();
System.useCodepage = true;
var link_xml:XML = new XML();
link_xml.ignoreWhite = true;
link_xml.onLoad = function(success) {
if (success) {
  //trace(this);
  nextFrame();
} else {
  trace("Error loading XML");
}
};
link_xml.load("content_xml.as");

/**
* Description 版权所有2007@lbynet http://www.www.52hai.com/User0/140
* @author _lby
* @version 0.1
* @discription:图片展览滚动效果;
*/
stop();
var _this = _root.link_xml.firstChild;
var len:Number = _this.childNodes.length;
//trace(len);
var img_path_arr:Array = [];
var link_arr:Array = [];
Loader_fun = function () {
for (var i:Number = 0; i<len; i++) {
  img_path_arr[i] = _this.childNodes[i].childNodes[0].childNodes[0].nodeValue;
  link_arr[i] = _this.childNodes[i].childNodes[1].childNodes[0].nodeValue;
  //进行copy影片剪辑排列
  content_mc.image_mc.duplicateMovieClip("image_mc"+i, 100+i);
  content_mc.image_mc._visible = false;
  content_mc["image_mc"+i]._x = content_mc.image_mc._width*i;
  content_mc["image_mc"+i]._y = 0;
  //加载图片;
  var mc:MovieClip = content_mc["image_mc"+i];
  mc.i = i;
  mc._alpha = 60;
  mc.onRollOver = function() {
   this._alpha = 100;
   trace(this.i);
   
  };
  mc.onRollOut = function() {
   this._alpha = 60;
  };
  mc.onRelease = function() {
   getURL(link_arr[this.i]);
  };
  var loadListener:Object = new Object();
  //参数mc为当前被加载进来的,这里为content_mc["image_mc"+i].load_mc
  loadListener.onLoadComplete = function(mc:MovieClip) {
   mc._parent.preloader._visible = false;
  };
  loadListener.onLoadError = function(mc:MovieClip) {
   mc._parent.preloader._visible = true;
   trace("加载图片失败");
  };
  if (img_path_arr != null && img_path_arr != "" && img_path_arr != undefined) {
   var imgLoader:MovieClipLoader = new MovieClipLoader();
   imgLoader.addListener(loadListener);
   imgLoader.loadClip(img_path_arr[i], content_mc["image_mc"+i].load_mc);
  }
}
};
Loader_fun();
content_mc.setMask(mask_mc);
/*
//自定义滚动类
import DragRegion;
new DragRegion(content_mc,mask_mc);
*/
/* 滚动判断 */
content_mc.onEnterFrame = function() {
this._x = -((this._width-mask_mc._width)/mask_mc._width)*mask_mc._xmouse;
//trace(this._x);
if (this._x<-(100*len-500)) {
  //超出的为100*len-500
  this._x = -(100*len-500);
} else if (this._x>-50) {
  this._x = 0;
}
};
关键词:flash,图片滚动
推荐给好友】【关闭】【收藏本文
最新五条评论
查看全部评论
评论总数 0
您的评论
用户名: 新注册) 密 码: 匿名:
·用户发表意见仅代表其个人意见,并且承担一切因发表内容引起的纠纷和责任
·本站管理人员有权在不通知用户的情况下删除不符合规定的评论信息或留做证据
·请客观的评价您所看到的资讯,提倡就事论事,杜绝漫骂和人身攻击等不文明行为