Menu xml avec flash (target)

soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007 - 16 août 2007 à 12:56
Adyady Messages postés 8 Date d'inscription mardi 13 juillet 2010 Statut Membre Dernière intervention 26 avril 2012 - 4 avril 2012 à 10:26
Voici un menu XML pour Flash MX,

Pour le détail du code, ouvrez la bibliothèque puis le composant ‘XMLMenu’.


voici le lien pour le télécharger en zip :


http://wiki.mediabox.fr/tutoriaux/flash/xml/menu_xml_elastique


mon probleme c'est comment charger un lien on clicant sur l'un de ses bouton dans la meme page swf


par exemple si on clique sur le lien de se bouton avec le code est


ca va ouvrir une page web


ca va charger le lien dans une page web par contre je vaux un code qui permi le swf de se charger dans la meme page swf ou il y a le menu


merci d'avance

20 réponses

cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
16 août 2007 à 14:37
faut rajouter un test dans le FLA du menu pour savoir dans quel target le lien doit s'ouvrir, c'est pas possible de faire ça de l'extérieur sans que le test ait été prévu.

@+! Samy
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
16 août 2007 à 15:48
je suis debutant  c'est quoi le test et comment ou on peut le rajoter
merci
0
cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
16 août 2007 à 16:17
faut que tu aies accès à la source de la galerie et tu dois trouver une fonction "getURL", là-dedans y'a un paramètre qui indique le target (le 3ème paramètre).

@+! Samy
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
17 août 2007 à 12:33
je ne comprend rien dans les code
est ce que ca le code en rouge
et c'est quoi le test

// Objet item (du menu)
function Item(name,parent,pos,page,trgt) {
    // Nom du menu
    this.name = name;
    // Branche dépliée ?
    this.deployed = false;
    // Url du lien (s'il y a lieu)
    this.page = page;
    // Target du lien (toujours s'il y a lieu)
    this.trgt = trgt;
merci
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
17 août 2007 à 13:48
non, faut que tu trouves le "getURL", pour le test, à toi de voir comment tu veux faire. Soit tu ajoutes un paramètre dans ton fichier XML (ouvrir="_self" ou "_blank" par exemple) ou alors tu fais un test sur le contenu du paramètre "adr" et tu regardes éventuellement si les 4 premiers caractères sont "http" par exemple.

@+! Samy
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
18 août 2007 à 12:06
je l'ai remplacer par ca mais la meme resulta

<OBJECT TYPE= "MENU ">

MONDIALISATION
Le MONDE

Historique
USA
Europe

Voir aussi
Le glossaire
Bibliotheque
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
18 août 2007 à 12:22
j'ai trouvéca pour code flash mais je rien compri

// --------------------------------------------------------------------------------
// fonction permettant de créer les Movieclips et de leur affecter les propriétés
// nécessaires
// --------------------------------------------------------------------------------
function convertXML() {
    mXML = myXML.buildObject();
    d = 0;
    niveau = 1000;
    vnom = 100;
    _root.pere = new array("");
    for (var i = 0; i<mXML.OBJECT.ITEM.length; i++) {
        construire(mXML.OBJECT.ITEM[i], 0);
        for (var j = 0; j<mXML.OBJECT.ITEM[i].ITEM.length; j++) {
            construire(mXML.OBJECT.ITEM[i].ITEM[j], 1);
            for (var k = 0; k<mXML.OBJECT.ITEM[i].ITEM[j].ITEM.length; k++) {
                construire(mXML.OBJECT.ITEM[i].ITEM[j].ITEM[k], 2);
            }
        }
    }
}
function construire(obj, niveau, le_pere) {
    le_nom = "c" add _root.vnom++;
    if (obj.TYPE == "folder") {
        if (niveau == 0) {
            _root.attachMovie("clip1", le_nom, _root.niveau++);
            _root.pere[1] = le_nom;
        } else {
            _root.attachMovie("clip2", le_nom, _root.niveau++);
            _root.pere[2] = le_nom;
            _root[le_nom].cache = true;
            _root[le_nom]._height = 0;
        }
        _root[le_nom].type = "folder";
        _root[le_nom].gotoAndStop(1);
    }
    if (obj.TYPE == "page") {
        _root.attachMovie("clip3", le_nom, _root.niveau++);
        _root[le_nom].type = "page";
        if (niveau != 0) {
            _root[le_nom].cache = true;
            _root[le_nom]._height = 0;
        }
        _root[le_nom].URL = obj.URL;
        _root[le_nom].TARGET = obj.TARGET;
        _root[le_nom].ACTION = obj.ACTION;
        _root[le_nom].pere = le_pere;
    }
    _root[le_nom].pere = _root.pere[Number(niveau)];
    _root[le_nom].type = obj.TYPE;
    _root[le_nom].tx.t = obj._value;
    _root[le_nom].tx.t.bold=true
    _root[le_nom].niveau = niveau;
}

// --------------------------------------------------------------------------------
// Fonction appellée lors d'un clic sur un menu de haut niveau = folder
// --------------------------------------------------------------------------------
function clicfolder(n) {
    for (var i = 100; i<vnom; i++) {
        if (("c" add i)<>n) {
            if (_root[n].ouvert && _root["c" add i].pere == _root[n]._name) {
                if (_root["c" add i].type == "folder") {
                    // _root["c" add i].gotoAndStop(5);
                    for (var j = 100; j<vnom; j++) {
                        if (_root["c" add j].pere == _root["c" add i]._name) {
                            _root["c" add j].cache = true;
                        }
                    }
                }
                _root["c" add i].cache = true;
            } else {
                _root["c" add i].cache = true;
                if (_root["c" add i].pere != _root[n]._name) {
                    _root["c" add i].gotoAndStop(1);
                }
            }
            if (!_root[n].ouvert && _root["c" add i].pere == _root[n]._name) {
                _root["c" add i].cache = false;
                _root["c" add i].gotoAndStop(1);
                //trace ("c" add i);
            }
        }
    }
}
// --------------------------------------------------------------------------------
// Fonction appellée lors d'un clic sur un menu de niveau intermédiaire = subfolder
// --------------------------------------------------------------------------------
function clicsubfolder(n) {
    for (var i = 100; i<vnom; i++) {
        if (("c" add i)<>n) {
            if (_root[n].ouvert && _root["c" add i].pere == _root[n]._name) {
                _root["c" add i].cache = true;
            }
            if ((_root["c" add i].niveau == _root[n].niveau) && (_root["c" add i].type == "folder")) {
                _root["c" add i].gotoAndStop(1);
                for (var j = 100; j<vnom; j++) {
                    if (_root["c" add j].pere == _root["c" add i]._name) {
                        _root["c" add j].cache = true;
                    }
                }
            }
            if (!_root[n].ouvert && _root["c" add i].pere == _root[n]._name) {
                _root["c" add i].cache = false;
            }
        }
    }
}
// --------------------------------------------------------------------------------
// Fonction appellée lors d'un clic sur un menu de niveau bas = page
// --------------------------------------------------------------------------------
function clicpage(n) {
    var lien = _root[n].URL;
    var targ = _root[n].TARGET;
    getURL(lien, targ);
    //trace (lien + targ);
}
0
cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
20 août 2007 à 00:11
c'est déjà prévu dans le code visiblement que tu aies le choix du target, donc dans ton XML, suffit de mettre TARGET="_self" normalement pour que ça s'ouvre dans la même fenêtre et TARGET="_blank" si tu veux que le lien s'ouvre dans une nouvelle fenêtre.

 @+! Samy
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
20 août 2007 à 13:14
Le probleme s pas ca
dans page web j'ai inseré de 2 swf , la 1er c'est une bande avec des animation et le nom de site. la 2eme c'est une page ou il y a le menu xml plus un espace pour text et autre... donc ce que je veux c'est comment on cliquant sur un  bouton de menu  xml  une  page swf (pas une page html) s'ouvre dans la meme place ou il y a le menu xml (2eme swf)
donc le 3eme swf  il a la meme taille que le 2eme

merci
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
20 août 2007 à 13:23
quand je cree un menu avec des boutons normale en flash sa marche
 on (release) {
    loadMovie("historique.swf",0);
}
mais le probleme avec le menu xml
0
cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
20 août 2007 à 13:36
utilise des frame c'est le plus simple, tu donnes un nom à ta frame, et dans le target, tu mettras ce nom. Le gros problème des frames c'est le référencement...mais bon, le flash n'est pas bien référencé non plus si on se donne pas la peine de le faire.

@+
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
20 août 2007 à 16:34
ah les frame je ne connai rien sur les frames c'est quoi donc
0
cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
20 août 2007 à 16:55
fais des recherches sur la programmation HTML avant de te lancer dans Flash!
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
20 août 2007 à 19:55
ah bon j'ai compri les frame de la page web moi j'ai cru en flash
je regarde ce q'il va donner

merci
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
21 août 2007 à 15:54
ca marche pas bien le swf s'ouvre on grande comme sur flash (tester l'animatin -ctrl entrer) et pour retourner a la 1er swf la meme chose donc la bonne soulition de trouver un code en falsh ou xml qui permi le swf de souvrir dans la meme swf pas dans la meme page ou frame
merci
0
cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
22 août 2007 à 08:33
Tu veux pas nous mettre ça en ligne qu'on voit ce que tu essaies de faire?
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
22 août 2007 à 20:43
0
cs_goldenboy68 Messages postés 1596 Date d'inscription samedi 3 janvier 2004 Statut Membre Dernière intervention 9 juin 2011 2
23 août 2007 à 08:18
C'est sur ton site que tu aurais dû mettre ton code, ici ce sont les sources finies qu'on met à disposition pour que les autres puissent les réutiliser si ça les intéresse.

@+
0
soufieva Messages postés 70 Date d'inscription mercredi 21 septembre 2005 Statut Membre Dernière intervention 23 août 2007
23 août 2007 à 12:12
mon site c'est un projet j'ai pas encore fini pour le lancer c'est des demarch a faire
je suis disole
alors vous avez trouver la solution pour le probleme ou c'est compliqué
merci
0
Adyady Messages postés 8 Date d'inscription mardi 13 juillet 2010 Statut Membre Dernière intervention 26 avril 2012
4 avril 2012 à 10:26
Bonjour,
J'ai le même problème,et n'ai rien trouvé sur les forums, google...
Je cherche à charger un swf dans le contener d'un autre swf en chargeant ce dernier par l'intermédiaire d'un xml.

En indiquant le nom de mon contener dans target cela ne fonctionne pas

<mnu titre="Bloc texte" link="bloctext2.swf" target="holder" />

J'ai essayé également avec _self et _parent qui sont sensé ouvrir dans la même fenêtre sur mon swf de base, mais à ce moment, il charge bien mon swf dans la même fenêtre mais je ne vois plus mon swf de base.

Avez vous trouvé une solution?

Merci
0
Rejoignez-nous