La Communauté Webmaster  forum rss


  Forum-webmaster
  Technique - programmation
  Javascript / DOM / Ajax
(Modérateurs: Shain, Netah, Lilian, lauryv, ToToMaStEr)
  problème de conflit avec ajax
« Précédent Suivant »
Pages: [1] Descendre
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
  Auteur  Sujet: problème de conflit avec ajax  (Lu 2961 fois)
problème de conflit avec ajax
« sur: le 19-04-2007 a 16:58:05 »
mitmit
Membre récent
*

Hors-Ligne

Messages: 3



Je suis un lama!

Voir le Profil
Répondre avec citation

bonjour à tous !

j'ai un problème sur mon site (generationsfm.com) : j'utilise un template joomla (rt_carbo_youyou_v2), qui comprend un menu de type transmenu, un slideshow flash (module frontpage slideshow) et un script ajax qui lit périodiquement un fichier xml et en affiche le contenu en temps réel sur la page d'accueil

seulement voilà, il semble que ces trois éléments entre en conflit d'une manière ou d'une autre : si le slide show est activé, ni le menu ni l'affichage des infos du fichier xml ne se fait, en revanche lorsque ce slideshow est désactivé le script comme le menu fonctionnent parfaitement...

je débute avec joomla et ajax et là je ne sais vraiment pas quoi faire...

please help !!

merci ^^

Rapporter au modérateur  

Re:problème de conflit avec ajax
« Répondre #1 sur: le 21-04-2007 a 19:15:42 »
iowa
Invité

E-Mail
Répondre avec citation

Comment on fait pour résoudre ton prob si on a pas la source 

Rapporter au modérateur  
Re:problème de conflit avec ajax
« Répondre #2 sur: le 23-04-2007 a 10:29:23 »
mitmit
Membre récent
*

Hors-Ligne

Messages: 3



Je suis un lama!

Voir le Profil
Répondre avec citation

autant pour moi ^^

voilci le code qui gère l'affichage des infos xml :
Code:
<script language="JavaScript" type="text/javascript">

function getXhr() {
   var req = null;
   
   //firefox
    if (window.XMLHttpRequest) {
      req = new XMLHttpRequest();
    }
   
   //ie
    else if (window.ActiveXObject) {
      try {
         req = new ActiveXObject("Msxml2.XMLHTTP");
      }
      catch (e) {
         req = new ActiveXObject("Microsoft.XMLHTTP");
      }
   }
   
   //non supporté
   else { 
      alert("Fonction non supportée par le navigateur");
      req = false;
   }
   
   return (req);
}

function getTrack()
{
    var req = getXhr();
      
    req.onreadystatechange = function() {
                        
                        if (req.readyState == 4 && req.status == 200) {
                           var resultat = req.responseText;
                           document.getElementById('div_track').innerHTML=resultat;
                        }
                        
                      };
                     
   req.open("GET","http://generationsfm.com/ajax_track.php?act=track",true);
   req.send(null);
   setTimeout("getTrack()", 5000);
}

getTrack();
</script>


et le script qui configure une fonction censée résoudre les problèmes de conflits sur l'évènement onload (addLoadEvent) :
Code:
/*
Derived from a script by Alejandro Gervasio.
Modified to take class names by Andy Miller
*/

matchDivs=function(divclass){

    var divs,contDivs,maxHeight,divHeight,d;
    // get all <div> elements in the document
    divs=document.getElementsByTagName('div');
    contDivs=[];
    // initialize maximum height value
    maxHeight=0;
    // iterate over all <div> elements in the document
    for(var i=0;i<divs.length;i++){
          // make collection with <div> elements with class attribute 'container'
         var reg = new RegExp("\\b" + divclass + "\\b");
          if(reg.test(divs[i].className)){
                d=divs[i];
                contDivs[contDivs.length]=d;
                // determine height for <div> element
                if(d.offsetHeight){
                    divHeight=d.offsetHeight;                
                }
                else if(d.style.pixelHeight){
                    divHeight=d.style.pixelHeight;               
                }
                // calculate maximum height
                maxHeight=Math.max(maxHeight,divHeight);
          }
    }
    // assign maximum height value to all of container <div> elements
    for(var i=0;i<contDivs.length;i++){
          contDivs[i].style.height=maxHeight + "px";
    }
}

//non invasive way to add function to onload()
function addLoadEvent(func) {

   var oldonload = window.onload;
   if (typeof window.onload != 'function') {
      window.onload = func;
   }
   else {
      window.onload = function() {
         if (oldonload) {
            oldonload();
         }
         func();
      }
   }
}

addLoadEvent(function(){
    if(document.getElementsByTagName){
        matchDivs("midbox-height");
        matchDivs("botbox-height");
    }
});


voilà il y a d'autres scripts qui entrent en jeu mais le message devient trop long si je les met :/
c'est assez corsé car ce n'est pas moi qui ai écrit le code donc pour trouver une erreur...

merci par avance ^^

Rapporter au modérateur  
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
Pages: [1] Monter
« Précédent Suivant »
Sauter à: 

Votre statut : Invité
Vous devez être membre pour participer.
 
 
Let’s Encrypt : le certificat SSL gratuit
Tester votre site internet sur différents navigateurs
[WordPress] Des problèmes avec l’administration ?
Rappel : Mettez à jour vos CMS et vos sites E-commerce
Le .fr fête ses 25 années d’existence !
Mesurer votre audience en temps réel avec BubbleStat
Porter réclamation contre Google Panda ?
Zlio n’est plus …
 
 
 
 
 

Copyright (c) Devclic 2002 - 2026 - Tous droits réservés

creation site internet strasbourg