В далёком прошлом, когда ещё жили динозавры, и компания Яндекс не прикрыла проект «Я.ру», имелся на сайте информер, который можно было прикручивать в обращении к гостям. В информере этом отображались уроки, и прочие работы, которые публиковались на нашем сайте. Но время шло и информер стал не актулен.

Но, тем не менее, статья с принципом работы gotoAndStop во Flash мне показался нужным. А потому статья всё же имеет своё место среди прочих уроков по Flash.

Я привык работать с Action Script, в то время как в Action Script 2 эта функция работает иначе. Сегодня все поисковые системы выводят на статьи по первому AS, где было достаточно прописать кнопке такую строку:

on (release)
{
gotoAndStop(1);
}

И при нажатии на неё вас без вопросов кидало бы на первый фрейм тайм-ленты. Вот этот метод я выше назвал консерватизмом. Каково же было моё удивление, когда я узнал что этой строки не достаточно для работы кнопок в AS2.

Как альтернатива вместо метода gotoAndStop(); использовать метод gotoAndPlay(); работать будет, однако я заметил следующую ошибку, когда кнопка ведет, скажем, на 3-й фрейм. При переходе на него и повторном нажатии кнопки вы попадёте уже на 4-й.

Но как быть, ведь нужно, чтобы работало. Выход есть. Он заключён в том, что вам нужно сначала задать имя фрейму, а уже потом писать функцию перехода.

Как можно заметить, когда вы задаёте имя фрейму, появляется красный флажок (как буква «альфа» если добавлены Action).

Теперь к кнопке, которая будет вести на эту страницу, нужно будет прописать следующий код:

*имя кнопки*.onRelease = function(){
gotoAndStop("*имя фрейма*");}

мой пример:

but_smiles.onRelease = function(){
gotoAndStop("sm_scouts2");}

Хочу также обратить внимание на то, что это прописано в теле фрейма, а не в теле кнопки.

Я не исключаю такой момент, что это всё можно сделать проще, но передо мной стояла задача «сделать так чтобы работало» и я с этой задачей справился.

Спонсоры: