Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Слайдер: подсветка активного изображения (http://www.flasher.ru/forum/showthread.php?t=176185)

Mukon 04.03.2012 11:39

Вложений: 1
Зделал вам подсветку кнопок при изменении картинок. Конечно качество кода у вас для кнопок плохой, можно было сделать добавления кнопок через массив(сколько картинок столько и ктопок), в таком случае и подсветку сделать очень просто. Но я подстроился под ваш код.

Скомпилировал вам SWF чтобы вы смогли увидеть результат пока не скачаете Adobe Flash CS4++

olga007 04.03.2012 15:02

Mukon,

Спасибо за помощь. Вы не могли бы код скинуть в отдельном файле, можно txt? CS4 сейчас пока ставить некогда, флешку к завтрашнему дню хочу сделать. Вы же только код исправляли?
С тем, что код плохой, абсолютно согласна. Но оптимизацией хотела заняться когда все будет работать. Я так и хотела сделать - загрузка изображения, следом создание кнопочки, они бы друг за другом появлялись, а не сразу, и было грамотней и красивее заодно.
И еще одно место очень коряво реализовано:
Код AS3:

btn1.addEventListener(MouseEvent.CLICK,gotoImage1);

Функция gotoImage1 не принимала больше параметров, кроме события, пришлось еще переписывать 6 раз - для каждого слайдера.
Еще один вопрос, - как картинки сделать кликабельными?

Mukon 04.03.2012 15:26

Код щас вышлю по почте.

По поводу кликабельных картинок. У вас есть функция

Код AS3:

function createImages():void{
    for(var i:int = 0; i < images.length; i++){
    var bm:Bitmap = new Bitmap();
    bm = Bitmap(images[i].content);
    bm.smoothing = true;
    bm.x = i*imageWidth;
    container_mc.addChild(bm);
    }
}

добавьте слушатель событий для container_mc.bm чтобы исполнял функцию в которой будет URLRequest

PainKiller 04.03.2012 21:36

Да, я сохранял в CS5, если еще актуально, могу перекинуть в 3шку

olga007 05.03.2012 15:23

Mukon,

спасибо за код. Вы кроме кода наверное что-то еще исправляли?
у меня на эти функции флеш ругается:

btn1.stop();
btn2.stop();
btn3.stop();
btn4.stop();
btn5.stop();
btn6.stop();
btn1.gotoAndStop(2);

Добавлено через 1 минуту
PainKiller,

да, если не трудно, пожалуйста переделайте в CS3

Mukon 05.03.2012 17:32

нужно вашы кнопки перевести в MovieClip'ы

PainKiller 05.03.2012 19:10

Вложений: 1
CS5 не позволяет сохранять в CS3, только не раньше версии CS4, в которую я и пересохранил

olga007 06.03.2012 21:42

Вложений: 1
Все работает, не получается только картинки кликабельными сделать.
Я делаю так:

объявляю переменную urlRequest:
Код AS3:

var url:String="";
var urlRequest:URLRequest = new URLRequest(url);

каждой картинке создаю слушатель события:
Код AS3:

function createImages():void{
        for(var i:int = 0; i < images.length; i++){
                var bm:Bitmap = new Bitmap();
                bm = Bitmap(images[i].content);
                bm.smoothing = true;
                bm.x = i*imageWidth;
                container_mc.addChild(bm);
                switch (i){
                        case 0: bm.addEventListener(MouseEvent.CLICK,gotoUrl0); break;
                        case 1: bm.addEventListener(MouseEvent.CLICK,gotoUrl1); break;
                        case 2: bm.addEventListener(MouseEvent.CLICK,gotoUrl2); break;
                        case 3: bm.addEventListener(MouseEvent.CLICK,gotoUrl3); break;
                        case 4: bm.addEventListener(MouseEvent.CLICK,gotoUrl4); break;
                }
        }
        T.start();
}

пишу функцию для каждой картинки:
Код AS3:

function gotoUrl0(e:Event):void{
    url="/products/electro/etl35.html";
    urlRequest.url=url;
    navigateToURL(urlRequest);
}

ошибок не выдает, просто не работает. подскажите, где я неверно написала?
На всякий случай архив выкладываю

Mukon 06.03.2012 21:55

Функция должна реагировать на MouseEvent а не на Event.

Код AS3:

function gotoUrl0(e:MouseEvent):void{
    url="/products/electro/etl35.html";
    urlRequest.url=url;
    navigateToURL(urlRequest);
}

Добавлено через 17 минут
И еще в вашем случяе, вот что

Код AS3:

slider_mc.addEventListener(MouseEvent.CLICK,gotoUrl0)


olga007 07.03.2012 20:15

спасибо, все получилось :-)


Часовой пояс GMT +4, время: 04:03.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.