Page 1 of 1

Flash, Firefox et Internet Explorer...

Posted: Wed Nov 28, 2007 3:32 pm
by JazzBassBourbon
Bonjour à tous,

Une fois n'est pas coutume, j'ai un problème d'affichage avec les deux navigateurs que sont Firefox et flash.
FIrefox ne me détecte pas mes animations flash.

J'essayes avec ce code que je rentre via l'option HTML dans l'éditeur Tynimce :








Seulement, l'éditeur Html suppirme par défaut les lignes avec les balises et du coup, firefox ne m'affiche pas mon animation alors qu'internet explorer lui, le fait.

Avez-vous une solution autre que le codage en dur dans le gabarit (ce qui me permettrait d'éviter de les multiplier, ce n'est pas l'esprit ni le but d'un CMS)

Je vous remercie par avance pour vos réponses.

Re: Flash, Firefox et Internet Explorer...

Posted: Thu Nov 29, 2007 10:39 am
by bmunsch
Bonjour,

Perso, j'utilise un fichier swfobject.js pour gérer les fichiers flash.

J'insère un bandeau ou un menu flash dans mon template à l'aide de ce fichier, mais je n'insère pas de fichier flash depuis tinyMCE.

Procédure :
1. Appel du fichier dans le head
2. Insérer le code dans le body

Dans le gabarit :


{literal}

{/literal}



 

Texte pour le référencement


var so = new SWFObject("uploads/images/menu.swf", "bandeau", "438", "660", "7", "#ffffff");
so.write("flashcontent");


Source du fichier : swfobject.js
/**
* SWFObject v1.4: Flash Player detection and embed - http://blog.deconcept.com/swfobject/
*
* SWFObject is (c) 2006 Geoff Stearns and is released under the MIT License:
* http://www.opensource.org/licenses/mit-license.php
*
* **SWFObject is the SWF embed script formarly known as FlashObject. The name was changed for
*  legal reasons.
*/
if(typeof deconcept=="undefined"){var deconcept=new Object();}
if(typeof deconcept.util=="undefined"){deconcept.util=new Object();}
if(typeof deconcept.SWFObjectUtil=="undefined"){deconcept.SWFObjectUtil=new Object();}
deconcept.SWFObject=function(_1,id,w,h,_5,c,_7,_8,_9,_a,_b){
if(!document.createElement||!document.getElementById){return;}
this.DETECT_KEY=_b?_b:"detectflash";
this.skipDetect=deconcept.util.getRequestParameter(this.DETECT_KEY);
this.params=new Object();
this.variables=new Object();
this.attributes=new Array();
if(_1){this.setAttribute("swf",_1);}
if(id){this.setAttribute("id",id);}
if(w){this.setAttribute("width",w);}
if(h){this.setAttribute("height",h);}
if(_5){this.setAttribute("version",new deconcept.PlayerVersion(_5.toString().split(".")));}
this.installedVer=deconcept.SWFObjectUtil.getPlayerVersion(this.getAttribute("version"),_7);
if(c){this.addParam("bgcolor",c);}
var q=_8?_8:"high";
this.addParam("quality",q);
this.setAttribute("useExpressInstall",_7);
this.setAttribute("doExpressInstall",false);
var _d=(_9)?_9:window.location;
this.setAttribute("xiRedirectUrl",_d);
this.setAttribute("redirectUrl","");
if(_a){this.setAttribute("redirectUrl",_a);}};
deconcept.SWFObject.prototype={setAttribute:function(_e,_f){
this.attributes[_e]=_f;
},getAttribute:function(_10){
return this.attributes[_10];
},addParam:function(_11,_12){
this.params[_11]=_12;
},getParams:function(){
return this.params;
},addVariable:function(_13,_14){
this.variables[_13]=_14;
},getVariable:function(_15){
return this.variables[_15];
},getVariables:function(){
return this.variables;
},getVariablePairs:function(){
var _16=new Array();
var key;
var _18=this.getVariables();
for(key in _18){
_16.push(key+"="+_18[key]);}
return _16;
},getSWFHTML:function(){
var _19="";
if(navigator.plugins&&navigator.mimeTypes&&navigator.mimeTypes.length){
if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","PlugIn");}
_19="0){_19+="flashvars=""+_1c+""";}
_19+="/>";
}else{
if(this.getAttribute("doExpressInstall")){this.addVariable("MMplayerType","ActiveX");}
_19="";
_19+="";
var _1d=this.getParams();
for(var key in _1d){_19+="";}
var _1f=this.getVariablePairs().join("&");
if(_1f.length>0){_19+="";}
_19+="";}
return _19;
},write:function(_20){
if(this.getAttribute("useExpressInstall")){
var _21=new deconcept.PlayerVersion([6,0,65]);
if(this.installedVer.versionIsValid(_21)&&!this.installedVer.versionIsValid(this.getAttribute("version"))){
this.setAttribute("doExpressInstall",true);
this.addVariable("MMredirectURL",escape(this.getAttribute("xiRedirectUrl")));
document.title=document.title.slice(0,47)+" - Flash Player Installation";
this.addVariable("MMdoctitle",document.title);}}
if(this.skipDetect||this.getAttribute("doExpressInstall")||this.installedVer.versionIsValid(this.getAttribute("version"))){
var n=(typeof _20=="string")?document.getElementById(_20):_20;
n.innerHTML=this.getSWFHTML();
return true;
}else{
if(this.getAttribute("redirectUrl")!=""){document.location.replace(this.getAttribute("redirectUrl"));}}
return false;}};
deconcept.SWFObjectUtil.getPlayerVersion=function(_23,_24){
var _25=new deconcept.PlayerVersion([0,0,0]);
if(navigator.plugins&&navigator.mimeTypes.length){
var x=navigator.plugins["Shockwave Flash"];
if(x&&x.description){_25=new deconcept.PlayerVersion(x.description.replace(/([a-z]|[A-Z]|\s)+/,"").replace(/(\s+r|\s+b[0-9]+)/,".").split("."));}
}else{try{
var axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash");
for(var i=3;axo!=null;i++){
axo=new ActiveXObject("ShockwaveFlash.ShockwaveFlash."+i);
_25=new deconcept.PlayerVersion([i,0,0]);}}
catch(e){}
if(_23&&_25.major>_23.major){return _25;}
if(!_23||((_23.minor!=0||_23.rev!=0)&&_25.major==_23.major)||_25.major!=6||_24){
try{_25=new deconcept.PlayerVersion(axo.GetVariable("$version").split(" ")[1].split(","));}
catch(e){}}}
return _25;};
deconcept.PlayerVersion=function(_29){
this.major=parseInt(_29[0])!=null?parseInt(_29[0]):0;
this.minor=parseInt(_29[1])||0;
this.rev=parseInt(_29[2])||0;};
deconcept.PlayerVersion.prototype.versionIsValid=function(fv){
if(this.majorfv.major){return true;}
if(this.minorfv.minor){return true;}
if(this.rev-1)?q.indexOf("&",_2d):q.length;
if(q.length>1&&_2d>-1){
return q.substring(q.indexOf("=",_2d)+1,_2e);
}}return "";}};
if(Array.prototype.push==null){
Array.prototype.push=function(_2f){
this[this.length]=_2f;
return this.length;};}
var getQueryParamValue=deconcept.util.getRequestParameter;
var FlashObject=deconcept.SWFObject; // for backwards compatibility
var SWFObject=deconcept.SWFObject;
Voilà, tiens moi au courant

Re: Flash, Firefox et Internet Explorer...

Posted: Thu Nov 29, 2007 4:22 pm
by JazzBassBourbon
Salut bmunsch,

Déjà merci pour ta solution.
J'ai essayé vite fait, mais j'ai encore eu quelques problèmes d'affichage. IE6 ne me détecte plus mon animation, et Firefox se doute qu'il y a quelque chose, mais il ne trouve pas ce que c'est...  ???

J'ai du faire une erreure en recopiant ton code.

Sinon, j'étais parti sur la solution de coder tous mes gabarits qui comportaient du flash en dur.
Dans ce cas là, les deux navigateurs affichent bien mon animation, simplement mon menu déroulant supérieur à la facheuse tendance à passer sous mon animation...

Je vais continuer à essayer d'exploiter ta solution, par contre, pourrais tu me préciser à quoi corresponde les 3 chiffres ainsi que la propriété bandeau  :


var so = new SWFObject("uploads/images/menu.swf", "bandeau", "438", "660", "7", "#ffffff");
so.write("flashcontent");

Est-ce que c'est height, width et le 7, je vois pas du tout...

Merci.

Re: Flash, Firefox et Internet Explorer...

Posted: Mon Dec 03, 2007 1:24 pm
by jiss
Bonjour
J'ai rencontré un probleme similaire
insertion via un bloc de contenu global d'une anim flash qui fonctionne sous IE et pas sous Firefox
apres pas mal de dolipranes je me suis apparcu que Tiny reecrit le code et ensuite ca bug sur Firefox
j'ai desactivé l'editeur dans les blocs et ca fonctionne sans problemes a present.