影片剪辑内的时间轴导航按钮

发布于 2024-11-03 17:46:26 字数 592 浏览 1 评论 0原文

首先,如果这个问题在其他地方得到了回答,我深表歉意 - 相信我,我已经搜索过了!我确信它需要一个非常简单的解决方案。

我里面有一个 MC,其中包含不同帧上的一些图像和一些应该在每个帧上转到和停止的按钮。一个简单的画廊。

我的计划是为我网站上的每个画廊创建一个 MC,并将每个画廊放在一个独特的框架中,因此主导航按钮转到其中包含 MC 的框架,然后 MC 按钮在该画廊内导航。

但按钮不起作用。

这是 MC 内的按钮代码:

on1_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_5); 

function fl_ClickToGoToAndStopAtFrame_5(event:MouseEvent):void 
{
    gotoAndStop("on1");

}

注意:为了便于检查代码,我已将按钮实例和框架标记为相同,这里有多个按钮,每个按钮除了数字发生变化外,每个按钮都具有相同的代码。我想没有必要把它们全部粘贴进去。

有帮助吗!如果您需要更多信息/代码,请随时询问。

非常感谢,

杰米

Firstly, apologies if this has been answered elsewhere - believe me I have searched! It requires an incredibly simple solution I'm sure.

I have an MC inside which consists of some images on different frames and some buttons which are supposed to gotoandStop on each of the frames. A simple gallery.

My plan is to create an MC for each gallery on my site and sit each one in a unique frame, so the main navigation btns go to a frame with an MC in it, then the MC buttons navigate within that gallery.

But the buttons aren't working.

Here's the button code inside the MC:

on1_btn.addEventListener(MouseEvent.CLICK, fl_ClickToGoToAndStopAtFrame_5); 

function fl_ClickToGoToAndStopAtFrame_5(event:MouseEvent):void 
{
    gotoAndStop("on1");

}

Note: I've labelled the button instances and frames the same for ease of checking the code, there are multiple buttons here each with the same code except for the change in numbers. I guess there's no need to paste all of them in.

Any help! If you need more info/code don't hesitate to ask.

Many thanks,

Jamie

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

活泼老夫 2024-11-10 17:46:26

我收集到你的按钮不在主时间线上。有一种非常简单的方法可以使用此方法从任何地方访问主时间线:

MovieClip(root).method();

所以对您来说:

MovieClip(root).gotoAndStop(5);

另外,只是为了好玩 - 这可能是一种更快、更简洁的方法来设置带有 gotoAndStop 操作的多个按钮,而不是拥有许多不同的功能:

给你的按钮命名以数字结尾..例如goto1,goto6,goto9。然后将它们添加到顶部的数组中:

var buttons:Array = ["goto1","goto6","goto9"]; // <--- here

var i:String;
for each(i in buttons)
{
    this[i].addEventListener(MouseEvent.CLICK, goto);
}

function goto(e:MouseEvent):void
{
    var sb:SimpleButton = SimpleButton(e.target);
    var num:uint = uint(sb.name.substr(sb.name.length-1, 1));

    trace(num);
    gotoAndStop(num);
}

I'm gathering your buttons aren't on the main timeline. There's a really simple way to access the main timeline from anywhere using this:

MovieClip(root).method();

So for you:

MovieClip(root).gotoAndStop(5);

Also, just for fun - this might be a quicker and neater way to set up multiple buttons with a gotoAndStop action rather than having many, many different functions:

Give your buttons names that end in numbers.. eg goto1, goto6, goto9. Then just add them to the Array at the top of this:

var buttons:Array = ["goto1","goto6","goto9"]; // <--- here

var i:String;
for each(i in buttons)
{
    this[i].addEventListener(MouseEvent.CLICK, goto);
}

function goto(e:MouseEvent):void
{
    var sb:SimpleButton = SimpleButton(e.target);
    var num:uint = uint(sb.name.substr(sb.name.length-1, 1));

    trace(num);
    gotoAndStop(num);
}
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文