Flash 创建XML驱动的图像滚动

本文介绍如何使用Flash创建一个XML驱动的图像滚动效果。通过实例化CScroll对象并设置其属性,可以实现图像的左右滚动。文章详细解释了代码的工作原理,并提供了完整的示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 [1b]为[/1b][1b]Flash 6[/1b][1b]创建一个[/1b][1b]XML[/1b][1b]驱动的图像滚动[/1b]
[1b]翻译:Enews2#cnet.com  来自:
[url=http://builder.com.com/]
[color="#444444"]http://builder.com.com[/color]
[/url]
[/1b]
在创建这个对象的代码的时候,我做了几个假设。首先假设结果集中总会有CScroll.depth节点或者多个节点。然后还假设所有的图像都是高100个像素宽80个像素。这样就使得编码和理解起来都比较简单。代码中没有异常处理机制,但是如果我基于这些假设使用这个对象,就不会出现任何问题。这也就是说我需要保证图像的大小为80X100,并且结果集中至少要有一个CScroll.depth节点。
当一个CScroll对象被实例化的时候,其属性被设为默认值。属性depth由构造方法的depth参数设置。CScroll.depth movieClips被创建,然后被添加到_root movieClip中,每个movieClip都被加入到scrollArray数组以便引用。你会发现每个movie clip的_x属性都是承接上一个_x属性,值为80。movie()方法设置在构造方法内部。move()和init()方法被连接到相应的外部函数:navigate和initScroll。
一旦CScroll对象实例化完成,你可以将XML“绑定”到CScroll对象并填充图像;这一步通过init()方法完成。使用init()方法,将传入XML文档作为参数传入,init()方法将抓取每个节点的节点的文本,然后用定义的图像填充可用的movieClips。另外两个在CScroll对象上设置的重要属性——xmlDocument属性和nodeCount属性——用于导航管理。xmlDocument代表你传入的XML文档,nodeCount属性是你的XML文档中节点的数目。
move()方法期望一个方向参数:+1表示向左移动,-1表示向右移动。这些参数可以通过一个按钮点击事件传入。CScroll对象的导航是循环的,如果XML文档中最后一个节点已被取出,那么下一个取出的节点是将是树的第一个节点,反之亦然。这在导航函数(move()方法)的前几行指定。
再增加几行代码使每个movieClip根据指定的方向要么向左要么向右移动80个像素。如果是向左移动,movieClip的_x属性被检查是否是其所在的位置。如果是-160像素(向左移动两步),movieClip会被置于最右端,面下一个指定的图像被装载到它的位置。如果是向右(80 * (CScroll.depth - 2))个像素(向右移动两步),movieClip会被置于最左端,面下一个指定的图像被装载到它的位置。
当前的节点号(被跟踪的节点)是滚到区域的最右边的节点。因此,当向右移动的时候,你必须下移(CScroll.depth - 2)个节点装载指定的图像。而且,如果那个值小于0(第一个节点的索引值),你就必须将当前的节点重置到链表的顶部:if (the_node
余下唯一要做的事是实例化和使用对象。下面是其代码:
代码拷贝框
var myXML = new XML();
myXML.onLoad = myXML_onload;
myXML.ignoreWhite = true;
var Scroll = new CScroll(8);
myXML.load("/Development/Model/getModels.asp");
function myXML_onload(success) {
if (success and myXML.status == 0 and myXML.hasChildNodes()) {
Scroll.init(myXML);
}
}
function fwd_onclick() {
Scroll.move(1);
}
function rev_onclick() {
Scroll.move(-1);
}
[Ctrl+A 全部选择 然后拷贝]
上面的代码实例化一个XML对象。XML的onLoad事件处理函数设置为myXML_onload。然后创建一个新的CScroll对象Scroll。最后从一个HTTP源装载XML数据。在XML数据被装载和解析完成之后,调用Scroll的init()方法并传入myXML。这样就使用必要的图像填充了图像滚动。最后,我为Scene上的几个Flash按钮组件添加点击事件处理函数。
如果你需要这个例子的源代码,
[url=http://www.blueidea.com/articleimg/2004/03/1725/Model.zip]
[color="#444444"]可以从这里下载[/color]
[/url]
。有关Flash的XML功能的信息,请查阅Flash的帮助文件。
如果你需要帮助创建一个数据的XML服务器端解决方案,给我发邮件 [1b]Enews2#cnet.com  [/1b],我会尽我所能给予您帮助。
本文转自:http://www.5uflash.com/flashjiaocheng/Flashyingyongkaifa/1060.html
资源下载链接为: https://pan.quark.cn/s/9648a1f24758 这个HTML文件是一个专门设计的网页,适合在告白或纪念日这样的特殊时刻送给女朋友,给她带来惊喜。它通过HTML技术,将普通文字转化为富有情感和创意的表达方式,让数字媒体也能传递深情。HTML(HyperText Markup Language)是构建网页的基础语言,通过标签描述网页结构和内容,让浏览器正确展示页面。在这个特效网页中,开发者可能使用了HTML5的新特性,比如音频、视频、Canvas画布或WebGL图形,来提升视觉效果和交互体验。 原本这个文件可能是基于ASP.NET技术构建的,其扩展名是“.aspx”。ASP.NET是微软开发的一个服务器端Web应用程序框架,支持多种编程语言(如C#或VB.NET)来编写动态网页。但为了在本地直接运行,不依赖服务器,开发者将其转换为纯静态的HTML格式,只需浏览器即可打开查看。 在使用这个HTML特效页时,建议使用Internet Explorer(IE)浏览器,因为一些老的或特定的网页特效可能只在IE上表现正常,尤其是那些依赖ActiveX控件或IE特有功能的页面。不过,由于IE逐渐被淘汰,现代网页可能不再对其进行优化,因此在其他现代浏览器上运行可能会出现问题。 压缩包内的文件“yangyisen0713-7561403-biaobai(html版本)_1598430618”是经过压缩的HTML文件,可能包含图片、CSS样式表和JavaScript脚本等资源。用户需要先解压,然后在浏览器中打开HTML文件,就能看到预设的告白或纪念日特效。 这个项目展示了HTML作为动态和互动内容载体的强大能力,也提醒我们,尽管技术在进步,但有时复古的方式(如使用IE浏览器)仍能唤起怀旧之情。在准备类似的个性化礼物时,掌握基本的HTML和网页制作技巧非常
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值