PDA

Просмотр полной версии : Flash кнопки-ссылки. Перезагрузка флеша на всех страницах.


MrArthur
27.09.2012, 15:01
Здравствуйте, уважаемые форумчане!
Я как и многие, совсем новичок во флеше. На данный момент, студент последнего курса, и у меня задание - сделать сайт, для факультета. Пролистав пару уроков и советов, всё пока отлично выходит и выглядит, но столкнулся с 2 проблемами:

1) Флеш шапка содержит кнопки, которые я никак не могу сделать ссылками.
28512

Подскажите пожалуйста, как их сделать ссылочками, на соответствующие страницы. Всю шапку скатал с бесплатных шаблонов и всё переделал под себя. Работал с Softink SWF decompiler. Файл соответственно SWF формата, если это важно.

2) Шапка перезагружается на каждой странице. Хоть тут и есть такие темы, четкого ответа нигде не видел.
Что-то про фреймы было и команда
if (_root._framesloaded==_root._totalframes) { // такое возможно только при повторной загрузке
gotoAndPlay(//номер нужного кадра или метка)} - но я никак не пойму, куда её вписывать.

Помогите, пожалуйста, разобраться :rolleyes: Буду благодарен за все Ваши ответы!

NikolyA
27.09.2012, 16:51
если сайт у тебя флешовый, то тогда с переходами проблем быть не должно, но я так понимаю у тебя флешовая только шапка, а значит надо переделывать

Tails
27.09.2012, 16:57
if (_root._framesloaded==_root._totalframes) { // такое возможно только при повторной загрузке
gotoAndPlay(//номер нужного кадра или метка)}

Это нужно писать в файле .fla (исходник, из которого был сделан swf) В исходнике же и прописывается ссылочка для кнопок, если автор шапки не предоставил иного способа. Вообще лучше поищите легальный исходник, декомпиляцию здесь обсуждать запрещено. Может быть, автор шапки сделал возможность передачи ссылок для кнопок методом flashVars, поищите там где скачали.

Так-же можно шапку сверстать на html.

MrArthur
27.09.2012, 19:05
if (_root._framesloaded==_root._totalframes) { // такое возможно только при повторной загрузке
gotoAndPlay(//номер нужного кадра или метка)}

Это нужно писать в файле .fla (исходник, из которого был сделан swf) В исходнике же и прописывается ссылочка для кнопок, если автор шапки не предоставил иного способа. Вообще лучше поищите легальный исходник, декомпиляцию здесь обсуждать запрещено. Может быть, автор шапки сделал возможность передачи ссылок для кнопок методом flashVars, поищите там где скачали.

Так-же можно шапку сверстать на html.

FLA есть! Скажите пожалйста, где именно, что и как писать. Прошу прощение за своё нубство, я только учусь :)

mooncar
27.09.2012, 19:07
MrArthur, картинки необходимо прикреплять к сообщению, а не выкладывать на файлохостингах. Сейчас у вас поправил.

Tails
27.09.2012, 19:33
Откройте свой fla во флеше, дайте имена кнопкам в полях 'instance name', затем в кадре, где у вас находяться кнопки во вкладке Actions впишите:

имя которое вы дали кнопке.onPress = function(){
_root.getURL("https://www.google.ru/", "_blank");
}
И так для каждой кнопки.

MrArthur
27.09.2012, 22:39
mooncar, извините, буду знать.

Tails, где именно это искать в Flash Professional CS6? Всё там перерыл, вообще не понимаю принципа его работы, хотя с photoshop и dreamweaver давно дружу :( Или посоветуете другую программу?

NikolyA
28.09.2012, 00:06
MrArthur найди в своей флешке эти самые кнопки или мувик в котором эти кнопки лежат и в _root пропиши для каждой кнопки свое действие, где искать вам видней, у вас исходные коды и т.д.

MrArthur
28.09.2012, 00:16
NikolyA, нахожу только через SWF editor, но там нельзя менять. Находится оно у меня в sprites или buttons... Сам уже запутался. У меня Flash Professional при проигрывании отображает две верхние части флеша через раз. Обычно отображает, совсем некорректно всю шапку. И я просто не могу найти эти кнопки. Как-то нашел текст, который на кнопках, типа "главная, новости" и т.п. Но его ссылкой сделать нельзя. Через SWF editor поменял картинки, текст, анимацию и т.п. а флеш не могу, хоть и исходник FLA есть.

Можно куда-то залить FLA/SWF чтоб Вы могли глянуть, может там какая-то совсем банальная ошибка.

mooncar
28.09.2012, 11:13
NikolyA
Можно куда-то залить FLA/SWF чтоб Вы могли глянуть
"Куда-то" не надо. Исходники необходимо прикреплять к своему сообщению. Файлопомойки у нас запрещены.

MrArthur
28.09.2012, 16:28
Прикрепил. Гляньте кто-то, если не сложно. Буду очень благодарен за напутствование :)

udaaff
28.09.2012, 16:42
А в чём проблема то?

MrArthur
28.09.2012, 16:43
udaaff, не могу найти кнопки в флеше и сделать их ссылками. Ну и чтоб отображался только раз флеш, а не на каждой странице грузился.

udaaff
28.09.2012, 16:46
Ахх.. сорри :) Не заметил, что уже одна страница исписана :)

Tails
28.09.2012, 16:54
Как всегда весь код разбросан по кадрам, мувиклипам, невидимым объектам ... Углубляться не стал, для перехода по ссылкам при нажатий кнопок, впишите в последний кадр основного таймлайна:
menu.bt1.onPress = function(){
getURL('https://www.google.ru/');
}
menu.bt2.onPress = function(){
getURL('https://www.google.ru/');
}
menu.bt3.onPress = function(){
getURL('https://www.google.ru/');
}
menu.bt4.onPress = function(){
getURL('https://www.google.ru/');
}
menu.bt5.onPress = function(){
getURL('https://www.google.ru/');
}
menu.bt6.onPress = function(){
getURL('https://www.google.ru/');
}
menu.bt7.onPress = function(){
getURL('https://www.google.ru/');
}

пс. Ваши кнопки находятся в маскированном слое btn

Tails
28.09.2012, 18:17
Код, который я разместил выше, (для активаций перехода по ссылкам при нажатий на кнопки) нужно разместить в последнем кадре основного таймлайна. Создайте ключевой кадр, зайдите во вкладку Actions и вставьте код.

Если вы хотите найти сами кнопки, это можно сделать двумя способами:

Нажать мышкой на 28 кадр слоя btn, тогда выделиться квадрат (я его обвёл в красный кружок), войдите в него двойным щелчком.
Или найти символ с кнопками в библиотеки (стрелка в правом нижнем углу).


28517

MrArthur
28.09.2012, 19:11
Tails, спасибо! Спасибо! Спасибо! Вышло!!! Работает!!! :drinks:

Осталось только сделать, чтоб не перезагружался флэш на каждой странице. Кто знает как - подскажите, пожалуйста :rolleyes: