problème javascript sous firefox

HTML5, CSS3, Javascript, support des mobiles... Que penser de votre site ? Vous manquez d'informations pour la construction d'un site qui puisse s'afficher correctement partout ? C'est un problème simple, un peu complexe ? Venez ici !
arnauldb
Arias
Messages : 2
Inscription : 08 juil. 2005, 19:48

problème javascript sous firefox

Message par arnauldb »

Bonjour,

j'ai crée un petit site web www.arnauld.fr qui s'affiche bien dans IE mais pas dans Firefox.

Voici le problème :
-le menu appelle dans un iframe divers documents (images, php, pages web).
-cet iframe a une largeur fixe (ok) mais une longueur qui s'adapte automatiquement au contenu grâce à un javascript.

Le problème est là, sous Firefox ce javascript ne fonctionne pas donc la hauteur de l'iframe ne bouge pas.

Je voudrais résoudre ce problème.

Code : Tout sélectionner

<p>
    <script language="JavaScript">
function iFrameHeight() {
if(document.getElementById && !(document.all)) {
h = 
document.getElementById('iframename').contentDocument.body.scrollH
eight;
document.getElementById('iframename').style.height = h;
}
else if(document.all) {
h = document.frames('iframename').document.body.scrollHeight;
document.all.iframename.style.height = h;
}
}

    </script>
<iframe name="liens" onLoad="iFrameHeight();" src="intro.htm" scrolling="no" 
scroll="auto" id="iframename" marginwidth="0" marginheight="0" 
frameborder="0"  style="width:100%;" height=800></iframe>
</p>
merci de votre aide,

Arnauld
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Outils > Console javascript :

Code : Tout sélectionner

Erreur : eight is not defined
Fichier Source : http://www.arnauld.fr/
Ligne : 82
Il faut dire que ton code contient ça :
if(document.getElementById && !(document.all)) {
h =
document.getElementById('iframename').contentDocument.body.scrollH
eight;
Alors bon, si tu rajoutes des retours à la ligne n'importe comment il ne faut pas t'étonner que ça ne marche pas.

D'un côté en voyant ça :

Code : Tout sélectionner

<meta name="generator" content="Namo WebEditor v6.0">
je me dis que ce n'est peut-être pas si étonnant... cet éditeur est particulièrement mauvais, je n'ai jamais vu une page faite avec lui qui fonctionne comme elle devrait sous autre chose qu'IE :x
À mon avis tu peux en changer tout de suite !

En plus elle n'est pas du tout valide XHTML 1.0 Strict, alors si c'est juste pour frimer que tu as un doctype XHTML 1.0 Strict, repasse tout de suite en HTML 4.01 transitionnel (la page ne sera toujours pas valide, mais ce sera moins pire) :roll:
Invité

Message par Invité »

Bon, je vois que je me fais agresser sans raisons !
Un forum c'est pour demander de l'aide non, pas pour se faire taper sur les doigts !

1) je suis novice, j'apprends sur le tas.

2) Je ne savais pas que Namo était un mauvais éditeur, donc j'apprends et j'en change. Que me conseilles-tu?

3)
Il faut dire que ton code contient ça :
Citation:
if(document.getElementById && !(document.all)) {
h =
document.getElementById('iframename').contentDocument.body.scrollH
eight;
Alors bon, si tu rajoutes des retours à la ligne n'importe comment il ne faut pas t'étonner que ça ne marche pas.
Si je fais des erreurs merci de me le dire et où et non pas m'engueuler car j'apprends.

4)
En plus elle n'est pas du tout valide XHTML 1.0 Strict, alors si c'est juste pour frimer que tu as un doctype XHTML 1.0 Strict, repasse tout de suite en HTML 4.01 transitionnel (la page ne sera toujours pas valide, mais ce sera moins pire) Roulement des yeux
Si tu as vu cela dans le code c'est tout simplement que j'ai pris un exemple sur un tutoriel et que je l'ai adapté à mon goût, frimer auprès de qui ? j'ai juste besoin d'un coup de main pour résoudre mon problème.

Je te rappelle que si je pose une question c'est pour demander de l'aide, alors la frime du code je la laisse aux autres.

Voilà, si tu veux me montrer mes erreurs tu le peux en m'aidant sinon tant pis j'attendrai une âme plus charitable .
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Mais je ne t'agresse pas, ou alors ce n'était pas le but... j'aurais du mettre plus de smileys peut-être :wink: :oops:

Pour la réponse, je te l'ai donnée en mettant en gras le retour à la ligne qui pose problème. À y réfléchir, on peut même simplifier la fonction entière qui contient beaucoup de code déprécié et totalement inutile :

Code : Tout sélectionner

<script type="text/javascript">
function iFrameHeight() {
h = document.getElementById('iframename').contentDocument.body.scrollHeight;
document.getElementById('iframename').style.height = h;
}
</script>
:wink:

Je te conseille vivement de faire valider ton code. Faire des erreurs dans le code HTML, c'est l'assurance qu'il y aura des problèmes. Comme tu as l'air de découvrir à l'instant les standards, je te conseille un peu de lecture : http://openweb.eu.org/ en en particulier les articles Se mettre aux standards du web, Pourquoi les standards, Toi comprendre moi ? et celui-ci aussi :wink:

PS : je ne te propose pas d'éditeur, tu serais très probablement déçu par ma réponse. Par contre je te proposece tutoriel HTML, parce que je suis persuadé que les éditeurs WYSIWYG ne sont pas ce qu'il faut :P
Invité

Message par Invité »

merci de ta réponse, je vais faire tout ça et si je bloque je reviendrai :)

Quant aux éditeurs WYSIWYG pour moi au début et toujours maintenant c'était parfait car clair.
Quand jai commençé ce site je voulais juste faire un truc simple pour faire partager mon expérience de prof, je n'ai pas de prétentions de web designer.
Je voulais un truc qui marche, point bar.

Mais c'est vrai qu'en le construisant , eh bien on s'intéresse à ces choses là, donc je pense approfondir.

A+ peut-être et thks pour les liens !
Invité

Message par Invité »

ok, ça marche nickel maintenant! C'était effectivement ce retour à la ligne qui posait problème, j'aurais du le voir.

Merci en tout cas. :D
arnauldb
Arias
Messages : 2
Inscription : 08 juil. 2005, 19:48

Message par arnauldb »

bon, j'ai un autre problème.
L'iframe se redimenssione bien automatiquement sous Firefox excepté pour le menu "gesture".

Je rappelle l'adresse du site www.arnauld.fr

Pourquoi ?

Merci.
calimo
Animal mythique
Messages : 14118
Inscription : 26 déc. 2003, 11:51

Message par calimo »

Mouais, je sais pas trop... mais si tu veux mon avis, ce n'est pas la meilleure solution (les frames, bof bof... et puis appliquer des styles en javascript, c'est pas vraiment fait pour.)

PS : il n'y a que chez moi que Firefox a tendance à crasher sur ce site ?
Répondre

Qui est en ligne ?

Utilisateurs parcourant ce forum : Aucun utilisateur inscrit et 4 invités