Rechercher : dans
Par :

JS: svp : améliorer script à cause d'IE 6

Dernière réponse le 4 sep 2008 à 14:31:07 moicjm, le 4 sep 2008 à 12:23:29 
 Signaler ce message aux modérateurs

Bonjour,

J'ai (pompé) une fonction Javascript qui m'est trèès utile pour mon site et "horreur!" elle ne fonctionne pas sur IE 6.
Elle sert à afficher des images en diaporama avec effet de fondu. C'est tres joli !

IE 6 n'affiche rien. Que dalle, niet, rien. Si qq'un savait lire ce code pour me dire comment résoudre le probleme... Je ne sais meme pas pourquoi IE 6 ne la comprend pas. A cause d'opacity peut-etre ? Peut-etre dans ce cas faudrait-il la modifier pour qu'elle affiche une image lors du load de la page ?

Moi, j'y comprend pas suffisamment en JS pour la refaire ...!

Merci d'avance !




^^^^^^^ le code dans <head> :

<script language="Javascript" type="text/javascript">
window.addEventListener?window.addEventListener("load",so_init,false):window.attachEvent("onload",so_init);

var d=document, imgs = new Array(), zInterval = null, current=0, pause=false;

function so_init() {
if(!d.getElementById || !d.createElement)return;

// DON'T FORGET TO GRAB THIS FILE AND PLACE IT ON YOUR SERVER IN THE SAME DIRECTORY AS THE JAVASCRIPT!
// http://slayeroffice.com/code/imageCrossFade/xfade2.css
css = d.createElement("link");
css.setAttribute("href","xfade2.css");
css.setAttribute("rel","stylesheet");
css.setAttribute("type","text/css");
d.getElementsByTagName("head")[0].appendChild(css);

imgs = d.getElementById("imageContainer").getElementsByTagName("img");
for(i=1;i<imgs.length;i++) imgs[i].xOpacity = 0;
imgs[0].style.display = "block";
imgs[0].xOpacity = .99;

setTimeout(so_xfade,2000);
}

function so_xfade() {
cOpacity = imgs[current].xOpacity;
nIndex = imgs[current+1]?current+1:0;

nOpacity = imgs[nIndex].xOpacity;

cOpacity-=.05;
nOpacity+=.05;

imgs[nIndex].style.display = "block";
imgs[current].xOpacity = cOpacity;
imgs[nIndex].xOpacity = nOpacity;

setOpacity(imgs[current]);
setOpacity(imgs[nIndex]);

if(cOpacity<=0) {
imgs[current].style.display = "none";
current = nIndex;
setTimeout(so_xfade,3500);
} else {
setTimeout(so_xfade,90);
}

function setOpacity(obj) {
if(obj.xOpacity>.99) {
obj.xOpacity = .99;
return;
}
obj.style.opacity = obj.xOpacity;
obj.style.MozOpacity = obj.xOpacity;
obj.style.filter = "alpha(opacity=" + (obj.xOpacity*100) + ")";
}

}
</script>




^^^^^^^ dans <body> :

<div id="imageContainer">
<img src="images/deux1.jpg" width="" height="" alt="">
<img src="images/deux2.jpg" width="" height="" alt="">
<img src="images/deux3.jpg" width="" height="" alt="">
<img src="images/deux4.jpg" width="" height="" alt="">
<img src="images/deux5.jpg" width="" height="" alt="">
</div>

Configuration: Windows XP
Firefox 2.0.0.16

Meilleures réponses pour « JS: svp : améliorer script à cause d'IE 6 » dans :
[Webmaster] Afficher des PNG transparents dans IE 5.5 et IE 6 Voir Le problème Les PNG transparents permettent de faire de très beaux effets sur les pages web. Tous les navigateurs le supportent (Firefox, Opera, Konqueror, Safari, Camino...)... sauf Internet Explorer 5.5 et 6 ! (Internet Explorer 7, lui,...
[IE] Erreur de script / Effectuer un débogage VoirDe temps en temps, lorsque vous naviguez sur le Net et que vous chargez une page Web, un message d'erreur de script survient : Une erreur est survenue. Une erreur est survenue sur le script de cette page. Souhaitez-vous effectuer un débogage...
Javascript - Date de dernière modification de la page VoirIl est possible, en langage Javascript, d'afficher la date de dernière modification de la page Web grâce à la propriété lastModified de l'objet document :
Télécharger Power IE6 VoirPower IE 6 est compatible avec Internet Explorer 7, c'est un logiciel d'origine canadienne, qui vous permet en quelques clics de rendre vos surfs plus discret : Nouvelles fonctionnalités : Le logiciel est désormais multilingue, et...
Javascript - Introduction au langage Javascript VoirQu'est-ce que le Javascript? Le Javascript est un langage de script incorporé dans un document HTML. Historiquement il s'agit même du premier langage de script pour le Web. Ce langage est un langage de programmation qui permet d'apporter des...
Javascript - Les événements VoirQu'appelle-t-on un événement? Les événements sont des actions de l'utilisateur, qui vont pouvoir donner lieu à une interactivité. L'événement par excellence est le clic de souris, car c'est le seul que le HTML gère. Grâce au Javascript il est...
Javascript - L'objet navigator VoirLes particularités de l'objet navigator L'objet navigator est un objet qui permet de récupérer des informations sur le navigateur qu'utilise le visiteur. Cela paraît totalement inutile à première vue, toutefois, comme vous le savez sûrement, il...

1

dreamfeeder, le 4 sep 2008 à 13:21:02
  • +1

// DON'T FORGET TO GRAB THIS FILE AND PLACE IT ON YOUR SERVER IN THE SAME DIRECTORY AS THE JAVASCRIPT!
// http://slayeroffice.com/code/imageCrossFade/xfade2.css


as tu copié et enregistré le fichier xfade2.css ? avec ca marche sous IE6

Répondre à dreamfeeder

2

moicjm, le 4 sep 2008 à 13:58:32

Oui, je l'avais bien fait ...

Répondre à moicjm

3

moicjm, le 4 sep 2008 à 14:07:37

Ya un truc qui m'échappe... C'est vrai que ca marche avec IE6 quand je regarde sur le site source (http://slayeroffice.com/code/imageCrossFade/xfade2.html) ..

Je pense que je me plante au niveau de tous les fichiers CSS ... Peux tu m'expliquer
ce qu'il faut mettre ou lorsqu'il dit :
* Javascript Source
* Initial CSS
* CSS Imported with Javascript

Merci

Répondre à moicjm

4

moicjm, le 4 sep 2008 à 14:10:23

Je sais vraiment pas en fait, car homis des modifs de taille (width et height), je n'ai rien changé ...

Répondre à moicjm

5

 moicjm, le 4 sep 2008 à 14:31:07
  • +1

Ok !!!!!

J'ai compris. C'était tout bête (comme moi quoi). J'avais mal écrit la balise <img> et Mozilla s'en foutait, mais pas IE...

Merci à toi qui a pris du temps pour moil

Répondre à moicjm