begin process at 2012 05 26 12:01:27
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Flash / Flash MX

 > 

Scripts

 > 

ActionScript

 > 

carrousel et appel aléatoire


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

carrousel et appel aléatoire

dimanche 8 juin 2008 à 14:36:44 | carrousel et appel aléatoire

seth1

Bonjour à tous et à toutes,
je réalise actuellement un carrousel (vous savez, ces menus rotatifs) en flash et as2 avec appel XML.
Ce dernier fonctionne parfaitement  :smile: et j'ai appliqué un système de "lightbox" (pas en vrai, c'est pas du js...) qui lorsque l'on clique sur un des boutons du menu ouvre une fenêtre de description avec photo.
Mon problème est que je souhaiterais que les fenêtres de description s'ouvrent de manière automatique, par exemple toutes les 10 secondes pour présenter un produit, même si l'utilisateur n'a pas cliqué sur un bouton du menu (afin d'attirer l'oeil sur la gamme, même sans intervention de l'internaute).

Je ne sais pas si j'ai été suffisamment clair  :oops:, mais je vous joint la source si vous souhaitez jeter un oeil... (ça serait gentil, je bloque totalement et pourtant, ce doit être super simple)

Le problème, je pense, est d'appliquer la fontion released (ligne 57) à certaines images clés, mais je n'y parviens pas...

En vous remerciant d'avance,
bonne journée à tous ;-)

Source :
import mx.utils.Delegate;
import mx.transitions.Tween;
import mx.transitions.easing.*;

var numOfItems:Number;
var radiusX:Number = 300;
var radiusY:Number = 75;
var centerX:Number = Stage.width / 2;
var centerY:Number = Stage.height / 2;
var speed:Number = 0.05;
var perspective:Number = 130;
var home:MovieClip = this;
theText._alpha = 0;

var tooltip:MovieClip = this.attachMovie("tooltip","tooltip",10000);
tooltip._alpha = 0;

var xml:XML = new XML();
xml.ignoreWhite = true;

xml.onLoad = function()
{
    var nodes = this.firstChild.childNodes;
    numOfItems = nodes.length;
    for(var i=0;i<numOfItems;i++)
    {
        var t = home.attachMovie("item","item"+i,i+1);
        t.angle = i * ((Math.PI*2)/numOfItems);
        t.onEnterFrame = mover;
        t.toolText = nodes[i].attributes.tooltip;
        t.content = nodes[i].attributes.content;
        t.icon.inner.loadMovie(nodes[i].attributes.image);
        t.r.inner.loadMovie(nodes[i].attributes.image);
        t.icon.onRollOver = over;
        t.icon.onRollOut = out;
        t.icon.onRelease = released;
    }
}

function over()
{
   
   
    home.tooltip.tipText.text = this._parent.toolText;
    home.tooltip._x = this._parent._x;
    home.tooltip._y = this._parent._y - this._parent._height/2;
    home.tooltip.onEnterFrame = Delegate.create(this,moveTip);
    home.tooltip._alpha = 100;
}

function out()
{
    delete home.tooltip.onEnterFrame;
    home.tooltip._alpha = 0;
}

function released()
{
   
    home.tooltip._alpha = 0;
    for(var i=0;i<numOfItems;i++)
    {
        var t:MovieClip = home["item"+i];
        t.xPos = t._x;
        t.yPos = t._y;
        t.theScale = t._xscale;
        delete t.icon.onRollOver;
        delete t.icon.onRollOut;
        delete t.icon.onRelease;
        delete t.onEnterFrame;
        if(t != this._parent)
        {
            var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,0,1,true);
            var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,0,1,true);
            var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,100,0,1,true);
        }
        else
        {
            var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,t._xscale,100,1,true);
            var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,t._yscale,100,1,true);
            var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,200,1,true);
            var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,320,1,true);
            var tw5:Tween = new Tween(theText,"_alpha",Strong.easeOut,0,100,1,true);
            theText.text = t.content;
            var s:Object = this;
            tw.onMotionStopped = function()
            {
                s.onRelease = unReleased;
            }
        }
    }
}

function unReleased()
{
   
    delete this.onRelease;
    var tw:Tween = new Tween(theText,"_alpha",Strong.easeOut,100,0,0.5,true);
    for(var i=0;i<numOfItems;i++)
    {
        var t:MovieClip = home["item"+i];
        if(t != this._parent)
        {
            var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,0,t.theScale,1,true);
            var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,0,t.theScale,1,true);
            var tw3:Tween = new Tween(t,"_alpha",Strong.easeOut,0,100,1,true);
        }
        else
        {
            var tw:Tween = new Tween(t,"_xscale",Strong.easeOut,100,t.theScale,1,true);
            var tw2:Tween = new Tween(t,"_yscale",Strong.easeOut,100,t.theScale,1,true);
            var tw3:Tween = new Tween(t,"_x",Strong.easeOut,t._x,t.xPos,1,true);
            var tw4:Tween = new Tween(t,"_y",Strong.easeOut,t._y,t.yPos,1,true);
            tw.onMotionStopped = function()
            {
                for(var i=0;i<numOfItems;i++)
                {
                    var t:MovieClip = home["item"+i];
                    t.icon.onRollOver = Delegate.create(t.icon,over);
                    t.icon.onRollOut = Delegate.create(t.icon,out);
                    t.icon.onRelease = Delegate.create(t.icon,released);
                    t.onEnterFrame = mover;
                }
            }
        }
    }
}


function moveTip()
{
    home.tooltip._x = this._parent._x;
    home.tooltip._y = this._parent._y - this._parent._height/2;
}

xml.load("icons.xml");

function mover()
{
    this._x = Math.cos(this.angle) * radiusX + centerX;
    this._y = Math.sin(this.angle) * radiusY + centerY;
    var s = (this._y - perspective) /(centerY+radiusY-perspective);
    this._xscale = this._yscale = s*100;
    this.angle += this._parent.speed;
    this.swapDepths(Math.round(this._xscale) + 100);
}

this.onMouseMove = function()
{
    speed = (this._xmouse-centerX)/2500;
}


Cette discussion est classée dans : var, tween, true, strong, easeout


Répondre à ce message

Sujets en rapport avec ce message

Problème de gestion d'un fichier xml dans un site [ par ximeng ] Bonsoir ! Je suis débutant en AS, je n'utilise jamais le xml et j'ai intégré un code dans mon site qui me rend un peu fou depuis quelques jour, j'ai t Prolbème de boutons [ par ulysse68 ] Bonjour c'est encore moi!Je suis en pleine réalisation d'un cd-rom, donc les soucis sont nombreux...Alors voilà cette fois-ci le problème vient des bo Probleme chargement image [ par jobe06 ] Bonjour, J'ai créer une animation en flash avec une fonction qui fait apparaitre l'image charger avec une transition et du texte... Jaimerai que te AS3 Supprimer une fonction via intéraction de la timeline [ par dieudesdieu ] Salut a tous! Bon alors voila je viens car j'ai un script que je n'arrive pas à arrêter. C'est un visualisateur d'image que je voudrais mettre sur un Utilisation des boucles ? [ par fanatikx ] Bonjour, Voila, j'ai un petit soucis au niveau des boucles. Disons que j'ai 2 clip sur ma scène qui contiennent chacuns une image. Je veux que lorsque probleme - Tween et optimisation [ par rahjuliano ] bonjour à tous,je suis en formation infographiste multimédia, j'arrive enfin au bout, mais il me reste à 'maitriser' (enfin à bien se débrouiller déjà Problème tween sous AS3 [ par biguiz ] Bonjour à tous et à toutes, Je cherche des solutions sur le web depuis un moment déjà mais sans réponses. Voici mon problème : je crée un cdrom dans l Récupérer width d'un MovieClip dynamique [ par HekThor ] Bonjour !Je poste ici pour relancer un petit problème sur lequel je bloquais et que je suis sur le point de résoudre.Je cherche en fait à récupérer la Probleme de codage Action script AS3 [ par stef97232 ] Bonjour, Je suis totalement novice dans le codage d'AS3 sur Flash CS4, mon but était de faire une porte qui coulisse latéralement, code que j'ai récu actionscript defnition d'une duree entre clip [ par ludo4432 ] Salutations à vous tous [^^happy17] j'aurais une petite question à vous posez [^^drapeaublanc] je voudrais savoir comment je pourrais définir une va


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales