Просмотр полной версии : Как правильно прописать событие нажатия кнопки-ролика?
Bulbulka
11.10.2008, 01:28
Здравствуйте!
Помогите пожалуйста с насущным вопросом.
Формулирую вопрос: есть наборчик из семи кнопок-роликов, постепенно меняющих цвет от серого к ярко-голубому (серый цвет при состоянии "покоя" плавно превращается в голубой при наведении и также плавненько становится вновь серым при отведении курсора мыши). Как сделать так чтобы после нажатия на любую из них, кнопка оставалась выделенной голубым цветом?
button1.onRollOver = over;
button1.onRollOut = out;
button1.text.buttonText.text = "О нас";
button1.onRelease = function() {
getURL("http://kak.ru", _blank);
}
button2.onRollOver = over;
button2.onRollOut = out;
button2.text.buttonText.text = "Продукция";
button2.onRelease = function() {
getURL("http://toster.ru", _blank);
}
button3.onRollOver = over;
button3.onRollOut = out;
button3.text.buttonText.text = "Разработки";
button3.onRelease = function() {
getURL("http://mail.ru", _blank);
}
button4.onRollOver = over;
button4.onRollOut = out;
button4.text.buttonText.text = "Публикации";
button4.onRelease = function() {
getURL("http://artlebedev.ru", _blank);
}
button5.onRollOver = over;
button5.onRollOut = out;
button5.text.buttonText.text = "Поддержка";
button5.onRelease = function() {
getURL("http://foto.ua", _blank);
}
button6.onRollOver = over;
button6.onRollOut = out;
button6.text.buttonText.text = "Галерея";
button6.onRelease = function() {
getURL("http://adme.ru", _blank);
}
button7.onRollOver = over;
button7.onRollOut = out;
button7.text.buttonText.text = "Форум";
button7.onRelease = function() {
getURL("http://amazon.com", _blank);
}
function over() {
this.gotoAndPlay(2);
}
function out() {
this.gotoAndPlay(11);
}
Bulbulka
11.10.2008, 02:21
Дико прошу помощи. Помогите пожалуйста.
AlexDesinger
11.10.2008, 02:27
button.onRelease = function(){
this.gotoAndStop(кадр где нужный цвет)
}
кстати такой вот вопрос: можно ли данный getURL чтоб находился в xml файле, и нажимая на кнопку в флешке, был переход на соответвуствующий адрес в нете, если возможно то что для этого нужно сделать?
Bulbulka
11.10.2008, 02:37
Ах да, еще нужно сделать так, чтобы после отведения предварительно нажатого курсора от кнопки, она осталась выделенной (то есть голубенькай)... потому что при такой вариации кода кнопка действительно приобретает нужный цвет, но только при нажатии на нее, а нужно чтоб она оставалась такой и после нажатия...
подскажите-ка пожалуйста ;)
Bulbulka проделываешь тоже самое, но только используешь не Button а MovieClip, делаешь 2 кадра, в обоих stop и дальше gotoAndStop(1) или gotoAndStop(2)
Ах да, зачем 2 одинаковыъ сообщения? когда можно предыдущее изменить
http://flasher.ru/forum/showthread.php?t=96163&highlight=switchButton
посмотри там как раз такой вот код приведен в 6-м посте, вроде то что надо
Bulbulka
11.10.2008, 02:49
Спасибо, испытаем.
Pardon - глюки с инетом :)
Дико прошу помощи. Помогите пожалуйста.Пользователь Bulbulka получает предупреждение за флуд.
Bulbulka
11.10.2008, 18:11
Что-то не получается сделать так как хочется, хотя и инстансы от муви-клипов на месте, и команды "stop" в кнопах-роликах присутствуют, и перепробовала внедрять события onPress, onReleaseOutside с функциями gotoAndStop на нужный кадр мувика.. а оставить кнопу выделенной цветом и после нажатия все-равно не получается...
Совершенно запуталась
Выкладываю исходник
Я как понял надо, что бы после наведения на один из элементов меню оставалось выделение или принажатии на элемент должно оставаться выделение?
Bulbulka
11.10.2008, 21:21
При нажатии кнопка выделяется, суть задачи в том, чтобы и после нажатия оставалось выделение. Нужно это для того чтоб пользователь знал, в каком разделе он находится в данный момент. Вот.
Bulbulka
11.10.2008, 23:36
Спасибо, это почти то что нужно. Вот только после нажатия любой из кнопок, я заметила, соседняя с нажатой кнопка (расположенная слева или справа) перестает реагировать на наведение курсора мыши, а реагирует только на отведение. Как это можно исправить? Можете пожалуйста написать пояснения к использованным вами командам.
посмотрел исходник и на нажатие и на отведение все работает прекрасно
Точно не работает??
Какая версия флэша??? у меня 8 версия
У меня все работает в fla и swf.
Все ссылки указанные в примере запускаются
Bulbulka
12.10.2008, 00:47
Алгоритм работает как надо и ссылки все открываются. Огромное Вам спасибо за помощь. Есть только небольшой ньюанс, заключающийся в том что после первого клика по любой из кнопок, когда курсором водишь по остальным кнопкам они плавненько загораются и потухают, так вообщем-то и надо. Но - когда второй раз нажимаешь какую-нибудь кнопку, другая кнопка перестает реагировать на наведение, а проигрывает только анимацию отведения. Например: первой нажимаю "Продукция", вожу по остальным кнопкам курсором не нажимая их - все загораются при наведении и потухают при отведении, все как надо. Второй раз жму курсором по кнопке "Поддержка", вожу мышью по остальным кнопкам, загораются и потухают как надо все, кроме "Продукция" - она не реагирует на наведение, то есть не загорается, как должна была бы, а только потухает, то есть выполняет исправно только функцию onRollOut - почему-то не работает onRollOver.. И так далее, нажимаю третий раз например "Разработки" - перестает реагировать на наведение "Поддержка", которая реагирует только на отведение... в чем загвоздка - не пойму...
ага, есть такое дело, просто надо еще раз посмотреть что да как работает, и почему именно так, все дело в том что там где анимация с gotoAndPlay и gotoAndStop работает не совсем корректно, проверь все еще раз, и по порядку
Не по теме: "Ээхх, нашим чуть чуть не хватило победить немцев(сами виноваты,булки)"
По теме:
Bulbulka, скажи, если не секрет, как давно работаешь с Flash?
Не сочти за грубость, но ты даже суть проблемы не хочешь понять, почему не работает. Когда начнешь понимать как работает тот или иной механизм, станет проще решать таки задачи.
Когда ты себя представишь самим механизмом решаемой задачи, когда ты будешь понимать, что из чего выходит и как это вообще получается, то станет на много проще решать такие проблемы.
Проблема заключалась в том, что после переключения элемента меню в то или иное положение(в OnEnterFrame), оно ничем не может измениться, так как onEnterFrame постоянно будет говорить, что:
mc2.gotoAndStop(2)
mc.gotoAndStop(11)
всегда будут такими и ничем их не изменишь в данном виде.
Поэтому и не работали onRollOver и onRollOut
Вот готовый вариант:
Bulbulka
12.10.2008, 02:37
Огромное Вам спасибище! От всего сердца =) а я-то думаю чего же там не хватает...
Скриптованию и синектике я только учусь, так что скоро исправлюсь.
Еще раз благодарствую.
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.