Je suis relativement nouveau à ce genre de chose en Flash alors je suis vraiment désolé si mon explication fait défaut dans tous les domaines, et j'apprécierais vraiment que des réponses puissent expliquer pleinement ce que je fais afin que je puisse apprendre par opposition à simplement coller dans une solution. Ce que j'essaie de produire est une petite bannière animée qui, une fois cliquée, lancera une superposition semi-transparente (similaire à LightBox, initialement conçue pour LightBox) couvrant le contenu de la page Web et contenant un lecteur vidéo. A partir de maintenant, je vais me référer à ces éléments comme «bannière» et «superposition». La superposition et la bannière sont contenues dans des fichiers .swf distincts.Bannière animée lancement de superposition de fenêtre complète avec vidéo avec des composants tiers
La bannière est relativement complexe, en ce sens qu'elle s'anime au chargement, joue une animation en boucle lorsqu'elle est inactive et une autre animation sur mouseOver. En cliquant sur la bannière ou en permettant à l'animation mouseOver de terminer, lancez la superposition. J'avais une version fonctionnelle qui appelait une Lightbox jQuery, mais on m'a maintenant demandé de construire cette fonctionnalité en utilisant d'autres composants tiers et cela a brisé l'animation et l'interactivité de la bannière.
Ceci est le code ActionScript tel qu'il est dans le fichier de bannière.
import flash.external.ExternalInterface;
import flash.events.MouseEvent;
import flash.events.Event;
stop();
curl_mc.alpha = 0;
curl_mc.stop();
hotspot_mc.useHandCursor = true;
hotspot_mc.buttonMode = true;
hotspot_mc.addEventListener(MouseEvent.ROLL_OVER, onLoopRollover, false, 0, true);
hotspot_mc.addEventListener(MouseEvent.ROLL_OUT, onLoopRollout, false, 0, true);
hotspot_mc.addEventListener(MouseEvent.CLICK, screenad.shared.callMethod("launchLayer"));
curl_mc.addEventListener('curlComplete', screenad.shared.callMethod("launchLayer"));
function onLoopRollover(e:MouseEvent):void
{
loop_mc.alpha = 0;
loop_mc.stop();
curl_mc.alpha = 1;
curl_mc.gotoAndPlay(1);
}
function onLoopRollout(e:MouseEvent):void
{
loop_mc.alpha = 1;
loop_mc.gotoAndPlay(1);
curl_mc.alpha = 0;
curl_mc.stop();
}
Et voici le code ActionScript dans le fichier de superposition.
screenad.hide();
screenad.shared.'showAd' = function()
{
screenad.show;
}
Ces refléter les changements qui me ont été proposés par l'équipe de soutien des composants, mais l'animation dans la bannière est toujours brisée comme l'interactivité est le lancement de la superposition.