Oui évidemment les codes que j'ai poster ne sont que des exemples, il ne s'agit pas ici du code qui génère les résultats comme la capture que j'ai laisser au dernier message.
Celui que j'ai tester, je l'ai écrit en AS3. Et ça fonctionne très bien. (voir capture)
Ce n'est pas une obligation de placer « link » dans le fichier XML. Il n'y a pas d'attribut qui gère la dimension du popup du genre : src="valeur" largeur="valeur" hauteur="valeur". Mais pour des popup's tu ne peut éviter javascript.
Pour des popup's il te faudra javascript car c'est lui qui génère les popup's. Remarque qu'il n'est pas rare de voir les images dans une autre fenêtre comme tu le fait. Et c'est bien aussi.
Quoiqu'il en soit je te suggère d'utilisé la méthode statique call ()
ExternalInterface.call ('nomFonctionJavascript', 'popup.html', largeur, hauteur);
Voici un exemple en AS3.
// Script actionscript AS3
var tf:TextFormat = new TextFormat ();
tf.bold = true;
tf.color = 0x000000;
tf.size = 22;
var tx:TextField = new TextField ();
tx.x = 12;
tx.y = 35;
tx.width = 300;
tx.height = 33;
tx.htmlText = '<a href="event:ouvrirPopup">Lance Popup</a>';
tx.selectable = false;
tx.setTextFormat (tf);
addChildAt (tx, 0);
tx.addEventListener (TextEvent.LINK, lancePopup);
function lancePopup (e:TextEvent)
{
if (ExternalInterface.available)
{
ExternalInterface.call ('ouvrirPopup', 'externalInterfacePopup.html', 500, 100);
}
else
{
trace ('L\'interface n\'est pas disponible sur votre système');
}
}
C'est le code de la capture du dernier message ici en haut.
Et le javascript en HTML comme ceci
// Script javascript
function ouvrirPopup(url, largeur, hauteur)
{
gauche = (screen.width/2)-(largeur/2);
haut = (screen.height/2)-(hauteur/2);
window.open(url, "popup", "height=" + hauteur + ", width=" + largeur + ", status= no, toolbar=no, menubar=no, location=no, resizable=no, titlebar=no, scrollbars=yes, fullscreen=no, top=" + haut + ", left=" + gauche);
}
Celui-ci centre le popup au screen du navigateur.
À la balise object le id=valeur est obligatoire avec IE. Exemple
// InstructionS HTML
<object id='flashobjet' type='application/x-shockwave-flash' data='externeFlash.swf' width='520' height='100'>
<param name='movie' value='flash/externeFlash.swf' />
<param name="allowScriptAccess" value="sameDomain" />
</object>
Le « id » de object est obligatoire. Même si il n'est pas utilisé dans les scripts
..
Modifié par zardoz (21 Sep 2011 - 11:29)