Casse-tête avec javascript et compatibilité Firefox

Thématique Casse-tête avec javascript et compatibilité Firefox, venez dialoguer avec de nombreux webmaster ! !

Forum webmaster


La Communauté Webmaster  forum rss
  Forum-webmaster
  Technique - programmation
  Javascript / DOM / Ajax
(Modérateurs: Shain, Netah, Lilian, lauryv, ToToMaStEr)
  Casse-tête avec javascript et compatibilité Firefox
« Précédent Suivant »
Pages: [1] Descendre
Répondre    Aviser des réponses    Envoyer le sujet    Imprimer
  Auteur  Sujet: Casse-tête avec javascript et compatibilité Firefox  (Lu 363 fois)
Casse-tête avec javascript et compatibilité Firefox
« sur: le 19-03-2008 à 11:22:56 »
alexreddef
Membre récent
*

Hors-Ligne

Sexe: Male
Messages: 1



Que la route de chacun sur cette terre soit bonne!

Voir le Profil    WWW    E-Mail
Répondre avec citation

Salut à tout le monde,
Je m'inscris aujourd'hui parce que je rencontre un problème que j'ai beau retourner dans tous les sens, je ne comprends pas pourquoi cela ne marche pas. Faut dire que j'ai appris seul à programmer en xhtml, css et javascript, donc je n'ai pas beaucoup d'expérience.
J'aurai besoin en fait de qqun qui jette un oeil à mon script.
Les infos : le site sur lequel je travaille est le mien www.alexespere.fr. Il marche nickel sous IE mais c'est la cata sous FF. Donc suis en train d'ajouter des scripts et une nouvelle stylesheet propre à Mozilla.
Toutes mes div sont en float et FF gère mal le bazar. Donc je dois placer ma div corps_de_page de manière absolute sous FF mais pour çà je dois supprimer une fonction visible/invisible sur les banners existantes (sinon je me retrouve avec un vide dans la page). Donc dans mon script (fichier unique pour toutes les pages) je checke le navigateur et si ce n'est pas IE je lance plusieurs fonctions. Notamment une function adapt () qui récupère les div et modifie leur class de telle sorte à ce que chaque chargement de pages, javascript modifie le code HTML pour une présentation adéquate. MAIS... Cela ne fonctionne pas. J'ai essayé du removeChild dans body sur mes div devenues inutiles sous FF, j'ai essayé du setAttribute("class","maclasse")... Rien n'y fait !!!!

Donc ben merci pour le ou la courageuse qui pourra me filer un coup de main. Alex.

Voilà mon script en entier :

var nomnav = navigator.appName;

if (nomnav != 'Microsoft Internet Explorer')
   {
      document.write("<link rel='stylesheet' media='screen' type='text/css' href='CSS files/intro_Firefox.css'>");
      alert ();
      adapt ();
   }   

// On alerte l'internaute que les fonctions ouvrir/fermer sont désactivées sous Mozilla
function alert ()
{
   alertGiven = false;
   if (!alertGiven)
      {
         alertWindow = window.open ("", "alertWin", "width=400,height=300,toolbar=no,location=no,scrollbars=yes");
         alertWindow.document.write ("<html><head><title>Mozilla Alert<\/title><link rel='stylesheet' media='screen' type='text/css' href='/CSS files/intro.css' \/><script type='text\/javascript'>function closeWindow (){if (alertWindow && !alertWindow.closed){alertWindow.close()}}</"+"script><\/head><body><p><img src='Images/FRflag.jpg' title='Drapeau français' alt='Drapeau français' \/>La nécessité de mettre le site en compatibilité avec le navigateur Mozilla Firefox résulte que les fonctions javascript Ouvrir et fermer les éléments sont indisponibles. Pardon pour le désagrément.<\/p><p><img src='Images/ESflag.jpg' title='Bandera española' alt='Bandera española' \/>Para que el sitio sea legible con el navegador Mozilla Firefox ha sido necesario desactivar las funciones javascript Abrir y Cerrar los elementos. Perdón para las molestias.<\/p><p><img src='Images/ENflag.jpg' title='British flag' alt='British flag' \/>In order to ensure the readibility of the website by the Mozilla Firefox browser, it was necessary to disable Open and Close Elements javascript functions. Sorry for the inconvenience.<\/p><p align='center'><button type='button' onclick='closeWindow()'>OK<\/button><\/p><\/body><\/html>");
         alertGiven = true;
      }
}

function adapt ()
{
      var divDelete1 = document.getElementById("top_banner_closed");
      divDelete1.className = "invisible";
      var divDelete2 = document.getElementById("menu_création_fermé");
      divDelete2.className = "invisible";
      var divDelete3 = document.getElementById("bottom_banner_closed");
      divDelete3.className = "invisible";
      var divVisible1 = document.getElementById("top_banner");
      divVisible1.className = "visible";
      var divVisible2 = document.getElementById("menu_création");
      divVisible2.className = "visible";
      var divVisible3 = document.getElementById("bottom_banner");
      divVisible3.className = "visible";
}

function fermerBannière ()
{
   if (nomnav == 'Microsoft Internet Explorer')
   {
      var div1 = document.getElementById ("top_banner");
      var div2 = document.getElementById ("top_banner_closed");
      div1.className = "invisible";
      div2.className = "";
   }
}

function ouvrirBannière ()
{
   if (nomnav == 'Microsoft Internet Explorer')
   {
      var div1 = document.getElementById ("top_banner");
      var div2 = document.getElementById ("top_banner_closed");
      div1.className = "";
      div2.className = "invisible";
   }
}

function fermerMenu ()
{
   if (nomnav == 'Microsoft Internet Explorer')
   {
      var div3 = document.getElementById ("menu_création");
      var div4 = document.getElementById ("menu_création_fermé");
      div3.className = "invisible";
      div4.className = "";
   }
}

function ouvrirMenu ()
{
   if (nomnav == 'Microsoft Internet Explorer')
   {
      var div3 = document.getElementById ("menu_création");
      var div4 = document.getElementById ("menu_création_fermé");
      div3.className = "";
      div4.className = "invisible";
   }
}

function fermerBoîte ()
{
   if (nomnav == 'Microsoft Internet Explorer')
   {
      var div5 = document.getElementById ("bottom_banner");
      var div6 = document.getElementById ("bottom_banner_closed");
      div5.className = "invisible";
      div6.className = "";
   }
}

function ouvrirBoîte ()
{
   if (nomnav == 'Microsoft Internet Explorer')
   {
      var div5 = document.getElementById ("bottom_banner");
      var div6 = document.getElementById ("bottom_banner_closed");
      div5.className = "";
      div6.className = "invisible";
   }
}

function activeButtonclass (i)
{
   document.getElementsByTagName("button")[i].className = "button_créamenu_actif";
}

function desactiveButtonclass (i)
{
   document.getElementsByTagName("button")[i].className = "button_créamenu";
}

var passif1 = new Image();
passif1.src = "Images/bouton_essai_passif.jpg";
var actif1 = new Image();
actif1.src = "Images/bouton_essai_actif.jpg";
var passif2 = new Image();
passif2.src = "Images/bouton_nouvelle_passif.jpg";
var actif2 = new Image();
actif2.src = "Images/bouton_nouvelle_actif.jpg";
var passif3 = new Image();
passif3.src = "Images/bouton_poèmes_passif.jpg";
var actif3 = new Image();
actif3.src = "Images/bouton_poèmes_actif.jpg";
var passif4 = new Image();
passif4.src = "Images/bouton_chansons_passif.jpg";
var actif4 = new Image();
actif4.src = "Images/bouton_chansons_actif.jpg";

function changeImage (image_no, object_image)
{
   document.images[image_no].src = object_image.src;
}

function Son (url)
{
   this.src = url
}

var son1 = new Son ("SOUND files/MI.mp3");
var son2 = new Son ("SOUND files/SOL.mp3");
var son3 = new Son ("SOUND files/LA.mp3");
var son4 = new Son ("SOUND files/DOg.mp3");
var son5 = new Son ("SOUND files/RE.mp3");
var son6 = new Son ("SOUND files/FA.mp3");
var son7 = new Son ("SOUND files/DOa.mp3");
var son8 = new Son ("SOUND files/acc_DO7.mp3");
var son9 = new Son ("SOUND files/acc_SI7.mp3");
var son10 = new Son ("SOUND files/acc_MIm.mp3");
var son11 = new Son ("SOUND files/acc_MI7.mp3");

function playSound (b)
{
   document.getElementById("son_lien").src = b.src;
}

Rapporter au modérateur   Connecté

Connecte-toi à tes sens pour vider ton esprit et établir la tranquillité.
Re:Casse-tête avec javascript et compatibilité Firefox
« Répondre #1 sur: le 20-03-2008 à 21:05:52 »
MarvinLeRouge
Habitué
***

Hors-Ligne

Messages: 385



Watch the rabbit !

Voir le Profil    WWW
Répondre avec citation

Salut,

Tu t'y prends mal. Contrairement à ce que tu crois, ce n'est pas Firefox qui "gère mal le bidule", mais justement IE; et comme tu as conçu ton site en prenant pour référence un outil qui est buggué, ton site sera quasi invariablement buggé dans tout autre navigateur.
Je te conseille de refaire tes css en prenant Firefox pour référence, et ENSUITE de faire des feuilles de styles spécifiques à IE6 et IE7 (pour les autres normalement y'a pas de pb), feuilles que tu pourras aisément appliquer grâce au "commentaire conditionnel" (petite recherche Google).

Rapporter au modérateur   Connecté

Lorsqu'un lapin rouge nait, on le nomme Marvin en mémoire de Marvin 1er qui détruisit la ville de Zautamauxime. Puis on le bannit car les lapins rouges, ça porte malheur ...
Re:Casse-tête avec javascript et compatibilité Firefox
« Répondre #2 sur: le 20-04-2008 à 13:26:33 »
jb_gfx
Superactif
****

Hors-Ligne

Sexe: Male
Messages: 549





Voir le Profil    WWW
Répondre avec citation

Quel code de porc...

« Dernière Édition: le 20-04-2008 à 13:26:47 par jb_gfx » Rapporter au modérateur   Connecté

Concéption de sites Internet et infographie
http://www.nitak-studio.com
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.
 
 
Le Sénat réclame une taxe sur les revenus
Yahoo en veut toujours plus
Un spammeur condamnée à 30 mois de prison
Google plaide pour un Yahoo indépendant
Jeux gratuits chez Yahoo avec de la publicité
Interviews Webmasters
Mise à jour du blog de Forum-webmaster !
Une rubrique E-commerce
 
 
 
 

Choisissez votre forum :
Discussions générales
Avis ?
A propos de Forum-webmaster
Présentation de services web
Actualité webmaster
Interviews Webmasters
HTML / CSS / XHTML
Javascript / DOM / Ajax
PHP / MySQL
Asp / Asp.net / IIS
Langages de programmation divers
Webdesign
Infographie
Flash / Director
Hébergement
Référencement
E-commerce
Le droit sur internet
Publicité - Affiliation
Formation[s]
Offres d'emploi
Demandes d'emploi
Recrutement bénévole
L'aparté ...
Matériel / Logiciel
Présentation

 

Copyright Skalpel 2008 - Tous droits réservés

creation de site strasbourg