2010-02-11 4 views
1

Je suis un développeur C# asp.net et j'ai besoin de mettre en place un certain nombre de bannières de site Web flash. Auparavant, pour les bannières d'image statique, j'ai mis en œuvre le code on_click derrière ou javascript pour enregistrer la bannière a été cliqué sur une base de données et de traiter la redirection.Meilleure façon de mettre en œuvre une bannière de site Web flash

Je n'ai pas beaucoup de connaissances sur le flash, si ce n'est que je sais qu'un programme flash peut gérer les événements de clic du programme.

Par conséquent, quelqu'un peut-il suggérer la meilleure solution pour capturer et traiter les événements de clic d'un objet flash sur une page Web.

Un grand merci,

Adam

+0

Je prendrais ces types de code. Mais encore faire un emballage en flash pour les bannières. Pour que vous référeniez ses fonctions par _root/root et à partir de ce wrapper, vous communiquez avec javascript. C'est juste plus facile à maintenir ... –

Répondre

1

Vous pouvez parler objets Flash avec JavaScript via Mootools de composant Swiff: http://mootools.net/blog/2008/02/12/whats-new-in-12-swiff/ http://mootools.net/docs/core/Utilities/Swiff

Cependant, pour des choses simples comme des bannières cliquables, tout ce que vous pouvez le besoin est swfobject: http://code.google.com/p/swfobject/

Un Fla piloté par XML décent mais simple sh bannière rotator peut être obtenu gratuitement ici: http://www.weberdesignlabs.com/blog/2008/06/open-source-xml-free-flash-banner/

Espérons que ça aide!

+0

Merci purfusion, je pense qu'une combinaison de swfobject et de la méthode actionscript ExternalInterface.Call() semble être la voie à suivre, de cette façon je peux obtenir le programme flash pour passer l'événement click à mon propre fonction js définie. Les tests sont toujours en cours! :) –

0

Vous pouvez communiquer de plusieurs façons avec Flash et votre code serveur.

1.) Utiliser JavaScript pour communiquer à/de votre fichier SWF et la page, il est incorporé dans. http://kb2.adobe.com/cps/156/tn_15683.html

Cela peut être combiné avec AJAX pour envoyer des données au serveur.

2.) envoyer directement des variables à un fichier côté serveur (en utilisant GET ou POST) dans Flash http://livedocs.adobe.com/flash/9.0/main/wwhelp/wwhimpl/common/html/wwhelp.htm?context=LiveDocs_Parts&file=00001790.html

var submitListener:Object = new Object(); 
submitListener.click = function(evt:Object) { 
    var result_lv:LoadVars = new LoadVars(); 
    result_lv.onLoad = function(success:Boolean) { 
    if (success) { 
     result_ta.text = result_lv.welcomeMessage; 
    } else { 
     result_ta.text = "Error connecting to server."; 
    } 
    }; 
    var send_lv:LoadVars = new LoadVars(); 
    send_lv.name = name_ti.text; 
    send_lv.sendAndLoad("http://www.flash-mx.com/mm/greeting.cfm", result_lv, "POST"); 
}; 
submit_button.addEventListener("click", submitListener); 

Vous pouvez avoir une page côté serveur (ASP.NET, PHP, etc ...) pour incrémenter le nombre de hits de la base de données.

Questions connexes