Exit
  • Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
  • 한국 커뮤니티
0

Getting the frame number from frame label in animate cc with HTML5

Community Beginner ,
Sep 15, 2020 Sep 15, 2020

Hi!

Is there a way to obtain the frame number (say, 30) from a given frame label (say,"myFrame", which is actually the label of frame 30)?

To be more specific, I have the following scenario:

There is a button and an event listener attached to it, using which I want to "gotoAndPlay()" to a particular frame.

However I don't want to use the number of the frame. The frame has a label, say, "myframe".

One way that I have stumbled upon is to use a for loop to find which frame number corresponds to the label, "myframe".

But I would love an easier alternative.

 

942
Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 2 Correct answers

Community Expert , Sep 15, 2020 Sep 15, 2020

Hi.

 

You can just pass the label name to the gotoAndPlay method like this:

 

this.gotoAndPlay("myframe");

 

 

Or if you really need the frame of the first frame of the label there is an undocumented array property of the timeline object called _labels. You can use it to easily get the corresponding frame number. Like this:

 

this.gotoAndPlay(this.timeline._labels["myframe"]);

 

 

Please let us know if this is what you want.

 

Regards,

JC

Translate
Community Expert , Sep 15, 2020 Sep 15, 2020

Try the second option. Like this:

this.gotoAndPlay(this.timeline._labels["myframe"] + 1);

 

Translate
Community Expert ,
Sep 15, 2020 Sep 15, 2020

Hi.

 

You can just pass the label name to the gotoAndPlay method like this:

 

this.gotoAndPlay("myframe");

 

 

Or if you really need the frame of the first frame of the label there is an undocumented array property of the timeline object called _labels. You can use it to easily get the corresponding frame number. Like this:

 

this.gotoAndPlay(this.timeline._labels["myframe"]);

 

 

Please let us know if this is what you want.

 

Regards,

JC

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Sep 15, 2020 Sep 15, 2020

Thanks for the reply. However I am aware of the option of using gotoAndPlay("myframe"). To be precise, I want something like gotoAndPlay ("myframe"-1);

 

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Sep 15, 2020 Sep 15, 2020

Try the second option. Like this:

this.gotoAndPlay(this.timeline._labels["myframe"] + 1);

 

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Sep 15, 2020 Sep 15, 2020

Exactly. Thank you so much!!

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Expert ,
Sep 15, 2020 Sep 15, 2020
LATEST

Excellent! You're welcome!

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
Sep 15, 2020 Sep 15, 2020

Hey it's solved. Thank you so much.

I just used console.log(this.timeline._labels["myframe"]); following your suggestion. Works like a charm!

Translate
Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines