Ajax - Contenu avec javascript swf et googlemap (fckeditor)

oeann Messages postés 21 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 19 juillet 2009 - 18 avril 2009 à 14:14
oeann Messages postés 21 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 19 juillet 2009 - 19 avril 2009 à 15:03
Bonjour j'ai besoin de votre aide. J'utilise FCKeditor mon outil est monté avec des pages ajax pour chargement du contenu. L'outil me pose probleme pour le passage de fonction javascript dans la reponse de ajax le javascript n'est pas retourné. J'ai beaucoup lu sur le sujet et tenté plusieurs solutions sans succès alors je me retourne vers vous...

Dans ma page principale j'appelle mes pages de cette facon:

<script language= "JavaScript" type="text/javascript">
  if(loadpagetype == 1){   
    load_page('?esthetique_information');
  }
  if(loadpagetype == 2){   
    load_page('?esthetique_galerie');
  }
  if(loadpagetype == 3){   
    load_page('?esthetique_prix');
  }
</script>

Ceci fonctionne très bien quand il n'y a pas de javascript dans mon contenu.

Mon contenu avec javascript est:

<script src ="http://ajax.googleapis.com/ajax/libs/swfobject/2.1/swfobject.js" type= "text/javascript">//swfobject plugin</script>
<script type="text/javascript">
/*<![CDATA[*/
/* FCK swfobject v1.5 */
document.write('
Get the Flash Player<\/a> to see this player.<\/div>');
var params={};
var attributes={};
var flashvars = {};
    params["scale"]="showall";
    params["play"]="true";
    params["menu"]="true";
    params["loop"]="true";
    params["allowfullscreen"]="false";
    params["wmode"]="transparent";
    attributes["id"]="testswf";
    attributes["title"]="testswf";
swfobject.embedSWF("http://localhost/cpanel/editor/userfiles/flash/VIDEO.swf", "flash2009317183619", 320, 175, "7.0.0", false, flashvars, params, attributes);
/*]]>*/
</script>

Pour l'instant j'en sui a ceci dans mon fichier ajax:
/*************************************************
    Fonction de definition de l'object xhr
**************************************************/
function new_xhr(){
    var xhr_object = null;
    if(window.XMLHttpRequest) // Firefox et autres
       xhr_object = new XMLHttpRequest();
    else if(window.ActiveXObject){ // Internet Explorer
       try {
                xhr_object = new ActiveXObject("Msxml2.XMLHTTP");
            } catch (e) {
                xhr_object = new ActiveXObject("Microsoft.XMLHTTP");
            }
    }
    else { // XMLHttpRequest non supporté par le navigateur
       alert("Votre navigateur ne supporte pas les objets XMLHTTPRequest...");
       xhr_object = false;
    }
    return xhr_object;
}

/*****************************************************
    Fonction qui va recharger le contenu
******************************************************/

function load_page(select) {
    var xhr2 = new_xhr();//On crée un nouvel objet XMLHttpRequest
   xhr2.onreadystatechange = function(){
       if ( xhr2.readyState == 4 ){//Actions executées une fois le chargement fini
         if(xhr2.status  != 200){//Message si il se preoduit une erreur
              document.getElementById("test").innerHTML = "Erreur code " + xhr2.status;
            } else {//On met le contenu du fichier externe dans la div "test"
              document.getElementById("test").innerHTML = xhr2.responseText;
          }
       } else {//Message affiché pendant le chargement
         document.getElementById("test").innerHTML = "Chargement en cours ...
";
     }
   }
   xhr2.open("GET", select.split('?')[1]+".php", true);//Appel du fichier externe
 xhr2.send(null);
}

J'ai vue que je dois utiliser eval et getelementbytagname('script') mais je c pas du tout comment l'implementer pour mon code a moi.

Merci de m'aider ..

23 réponses

oeann Messages postés 21 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 19 juillet 2009
19 avril 2009 à 13:33
bon finalement je veux plus me servir de write.. dans ajax....

j'ai enlevé le plugin de swfobject 1.5 dans fckeditor pour ravoir le code de base qui donne:

bon dans firefox ca passe tres bien... mais pas avec ie je dois surement ajouter une balise object.

Alors avec ajax, comment je fais pour modifier la réponse et mettre la balise object pour faire fonctionner l'anim avec ie?

merci encore j'aurais du t'écouter plus tot... :)
0
Bul3 Messages postés 4933 Date d'inscription samedi 1 juillet 2006 Statut Membre Dernière intervention 2 février 2015 16
19 avril 2009 à 14:32
euh...   je dirais.... ça dépend !    ;o(

par exemple :
<object    type="application/x-shockwave-flash"
            data="Horloges/clock.swf"
            width="300" height="300">
   
   
</object>
chez moi ( ! j'ai bien dit chez moi ! ), ça fonctionne parfaitement
   avec FF,IE.... j'ai eu des difficultés avec FF, mais ça baigne.
avec d'autres solutions, ça marchait avec FF pas avec IE !
et autres "misères"

on peut aussi tester :
<object         type="application/x-shockwave-flash">
   
       
       
</object>
qui fonctionnait aussi ( il y a un temps ? )

il y a d'autres possibilités...

je t'avoue ne guère utiliser flash ( c'est même bloqué dans mes
navigateurs ! ), sauf pour tester ici et là. donc très loin d'être
quelqu'un qui peut t'aider réellement sur ce point

@+
0
oeann Messages postés 21 Date d'inscription dimanche 12 novembre 2006 Statut Membre Dernière intervention 19 juillet 2009
19 avril 2009 à 15:03
merci tu es vraiment gentil de toujours me répondre.

je crois que je vais oublié ajax pour faire ca vue que embed passe très bien dans textresponse.

alors je crois que le fichier php appelé par ajax je fais faire la modif direct dedans en php. Faque je vais ajouter en php la balise object manquante et a la fin de embed </object>

je crois que de cette facon ca va etre plus facile.

Il me restera ensuite a regler leprobleme avec googlemap..
0
Rejoignez-nous