Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1632 connectés 

  FORUM HardWare.fr
  Programmation

  [OPERA] mon site ne marche pas du tout avec opera (pb de JavaScript)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[OPERA] mon site ne marche pas du tout avec opera (pb de JavaScript)

n°115511
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 12:03:11  profilanswer
 

bonjour a tous,
 
    je v bientot mettre en ligne un site, et afin de permettre plus de compatibilité, je le teste sous different navigateur.
Pas de pb avec Ie (normal), qq pb avec NS (normal), mais là je voulais essayer opera et là c la misere : il n'ouvre meme pas la premiere page !!!
 
voila l'erreur :
"/logo.htm : le type d'adresse est inconu ou non supporté"
 
et il me t fait ça pour chacune des frames. Bon il faut savoir que ma page index est speciale : elle creer les frames uniquement si le browser supporte javascript.
voici son code :

Code :
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  4. <TITLE>European Institute of Cognitive Sciences and Engineering</TITLE>
  5. <!-- Caché pour les vieux navigateurs ...
  6. //permet de sortir des frames si le visiteur vient d'un autre site
  7. if (top.location != self.document.location)
  8. top.location=self.document.location;
  9. // determine si le navigateur utilisé est netscape 4.x ou inferieur
  10. function oldNetscape()
  11. {
  12.     verStr=navigator.appVersion;
  13.     version = parseFloat(verStr);
  14.     if (navigator.appName == 'Netscape')
  15. {
  16.     if (version <= 4.7)
  17.   return true;
  18.  else
  19.      return false;
  20. }
  21.     else
  22.         return false;
  23. }
  24. //positionne les frames
  25. function frame()
  26. {
  27. document.writeln('<html>');
  28. document.writeln('<head>');
  29. document.writeln('<title>European Institute of Cognitive Sciences and Engineering</title>');
  30. document.writeln('</head>');
  31. document.writeln('<frameset cols="153,*" framespacing=0 border=0 frameborder="no">');
  32. document.writeln('  <frameset rows="90,*">');
  33. document.writeln('    <frame name="logo" src="logo.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  34. document.writeln('    <frameset rows="110,*">');
  35. document.writeln('      <frame name="naviSmall" src="naviSmall.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  36. document.writeln('      <frameset rows="*,41">');
  37. document.writeln('        <frame name="menuGauche" src="menu.htm" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  38. document.writeln('        <frame name="copyright" src="copyright.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  39. document.writeln('      </frameset>');
  40. document.writeln('    </frameset>');
  41. document.writeln('  </frameset>');
  42. document.writeln('  <frameset rows="65,*">');
  43. document.writeln('    <frame name="upFrame" src="upframe.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  44. document.writeln('    <frameset rows="*,20">');
  45. document.writeln('      <frame name="content" src="accueil.htm" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  46. document.writeln('      <frame name="downFrame" src="downframe.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  47. document.writeln('    </frameset>');
  48. document.writeln('  </frameset>');
  49. document.writeln('<noframes>');
  50. document.writeln('<body>');
  51. document.writeln('<font face="Arial" size=5>We are sorry but your browser does not support frame.<br>');
  52. document.writeln('Please update your favorite browser and come after ;<br>');
  53. document.writeln('<ul type="disc">');
  54. document.writeln('  <li><a href="http://www.microsoft.com">Internet Explorer</a>');
  55. document.writeln('  <li><a href="http://www.netscape.com">Netscape</a>');
  56. document.writeln('</ul>');
  57. document.writeln('</font>');
  58. document.writeln('</body>');
  59. document.writeln('</noframes>');
  60. document.writeln('</frameset>');
  61. document.writeln('</html>');
  62. }
  63. //-->
  64. </script>
  65. </head>
  66. <body onLoad="javascript:frame();">
  67. <font size=3>
  68.     <b>Please wait during loading ....<br> If this page stay here, it's probabily because your
  69.     browser can not diplay it.<br>We advise you to download and install the last version of Internet
  70. Explorer or Netscape.<br> Thank you for your comprehension.
  71. <ul type="disc">
  72.     <li><a href="http://www.microsoft.com">Internet Explorer</a>
  73.     <li><a href="http://www.netscape.com">Netscape</a>
  74.     </ul>
  75. </b>
  76. </font>
  77. </body>
  78. </html>


voila, comme vous pouvez le voir, c un javascript qui ecrit la page.
 
C ça qui pose probleme a opera ?
 
merci  :jap:

 

[jfdsdjhfuetppo]--Message édité par petoulachi--[/jfdsdjhfuetppo]

mood
Publicité
Posté le 21-03-2002 à 12:03:11  profilanswer
 

n°115519
DLR
Hein c'était quoi la question?
Posté le 21-03-2002 à 12:08:53  profilanswer
 

le probleme c Opera, c pas compatbile HTML 4.01 :D
prend plutot Mozilla si tu veux faire HaCkErZ anti M$


---------------
Narf... It is broken...
n°115520
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 12:10:29  profilanswer
 

DLR a écrit a écrit :

le probleme c Opera, c pas compatbile HTML 4.01 :D
prend plutot Mozilla si tu veux faire HaCkErZ anti M$  




heu non tu comprends pas, moi je m'en fout a la limite d'opera, mais je veux que mon sitre soit visible sous opera.
 
Donc quelles sont les modifs a faire ?
 
merci

n°115522
gizmo
Posté le 21-03-2002 à 12:11:09  profilanswer
 

ben déja, si tu commencais pas écire un code correct, cad un code dans lequel le javascript est mis entre balise javasript...

n°115523
gizmo
Posté le 21-03-2002 à 12:11:55  profilanswer
 

DLR a écrit a écrit :

le probleme c Opera, c pas compatbile HTML 4.01 :D
prend plutot Mozilla si tu veux faire HaCkErZ anti M$  




 
TOTALEMENT FAUX! opéra est le browser qui respect le plus cette norme!

n°115526
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 12:15:10  profilanswer
 

gizmo a écrit a écrit :

ben déja, si tu commencais pas écire un code correct, cad un code dans lequel le javascript est mis entre balise javasript...  




ouais non pas de pb, elle  y est la balise en haut, c juste que je l'ai viré car j'ai viré les balises meta qui servaient a rien pour ce pb, et du coup j'ai viré aussi la ligne <script> :)

n°115527
gizmo
Posté le 21-03-2002 à 12:15:33  profilanswer
 

ok, je regarde la suite alors :D

n°115531
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 12:20:11  profilanswer
 

gizmo a écrit a écrit :

ok, je regarde la suite alors :D  




 :jap:

n°115533
gizmo
Posté le 21-03-2002 à 12:22:51  profilanswer
 

tu as une erreur d'imbrication dans tes balises frameset et noframe, la frameset doit être fermée avant d'ouvrir la noframe
 
c'est la seule erreur que je vois, le reste est correct et fonction sous opéra

n°115534
DLR
Hein c'était quoi la question?
Posté le 21-03-2002 à 12:24:03  profilanswer
 

petoulachi a écrit a écrit :

 
heu non tu comprends pas, moi je m'en fout a la limite d'opera, mais je veux que mon sitre soit visible sous opera.
 
Donc quelles sont les modifs a faire ?
 
merci  




 
rajoute DOCTYPE en en-tete du fichier pour la version HTML


---------------
Narf... It is broken...
mood
Publicité
Posté le 21-03-2002 à 12:24:03  profilanswer
 

n°115535
DLR
Hein c'était quoi la question?
Posté le 21-03-2002 à 12:24:21  profilanswer
 

gizmo a écrit a écrit :

 
 
TOTALEMENT FAUX! opéra est le browser qui respect le plus cette norme!  




 
naaaaan jle crois pas...


---------------
Narf... It is broken...
n°115536
gizmo
Posté le 21-03-2002 à 12:28:05  profilanswer
 

C'est pourtant vrai, et c'est la même chose pour le CSS.

n°115537
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 12:28:24  profilanswer
 

gizmo a écrit a écrit :

tu as une erreur d'imbrication dans tes balises frameset et noframe, la frameset doit être fermée avant d'ouvrir la noframe
 
c'est la seule erreur que je vois, le reste est correct et fonction sous opéra  




bon j'ai changé ça merci. Mais ça ne change rien. Il passe le nom de chacune de mes frames, precedés de "/" en me disant la meme erreur (le type d'adresse est inconu ou non supporté). Il ne supporte pas les adresses relatives ou quoi ?

n°115544
kayasax
Posté le 21-03-2002 à 12:45:25  profilanswer
 

ben essaye avec les chemins complets tu verras ...

n°115545
leirn
A.D.I.D.A.S.
Posté le 21-03-2002 à 12:46:30  profilanswer
 

petoulachi a écrit a écrit :

 
bon j'ai changé ça merci. Mais ça ne change rien. Il passe le nom de chacune de mes frames, precedés de "/" en me disant la meme erreur (le type d'adresse est inconu ou non supporté). Il ne supporte pas les adresses relatives ou quoi ?  




 
essai de faire "./logo.htm" ou alors simplement "logo.htm"


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
n°115549
gizmo
Posté le 21-03-2002 à 12:54:04  profilanswer
 

ok, je pense que j'ai compris l'erreur, je vérifie...

n°115550
leirn
A.D.I.D.A.S.
Posté le 21-03-2002 à 12:57:07  profilanswer
 

gizmo a écrit a écrit :

ok, je pense que j'ai compris l'erreur, je vérifie...  




 
qd ta trouvé dis nous ce ke ct... culture pour moi :)


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
n°115551
gizmo
Posté le 21-03-2002 à 13:00:14  profilanswer
 

TROUVE! (chuis une bête :D) L'erreur, une fois de plus, ne vient pas d'opéra, mais bien de ta facon d'écrire le code.
 
Explication: le STANDARD HTML oblige à choisir entre body et frameset dans une même page. Or toi, tu mets les 2, donc il est normal qu'Opéra s'y perde.
 
Voici donc le code correct, épuré (parce qu'en plus, c'était le bordel :D), et qui marche:
 

Code :
  1. <html>
  2. <head>
  3. <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
  4. <TITLE>European Institute of Cognitive Sciences and Engineering</TITLE>
  5. </head>
  6. <script language="javascript">
  7. <!-- Caché pour les vieux navigateurs ...
  8. //permet de sortir des frames si le visiteur vient d'un autre site
  9. if (top.location != self.document.location)
  10. top.location=self.document.location;
  11. // determine si le navigateur utilisé est netscape 4.x ou inferieur
  12. function oldNetscape()
  13. {
  14.   verStr=navigator.appVersion;
  15.   version = parseFloat(verStr);
  16.   if (navigator.appName == 'Netscape')
  17. {
  18.   if (version <= 4.7)
  19. return true;
  20. else
  21.    return false;
  22. }
  23.   else
  24.     return false;
  25. }
  26. document.writeln('<html>');
  27. document.writeln('<head>');
  28. document.writeln('<title>European Institute of Cognitive Sciences and Engineering</title>');
  29. document.writeln('</head>');
  30. document.writeln('<frameset cols="153,*" framespacing=0 border=0 frameborder="no">');
  31. document.writeln('  <frameset rows="90,110,*,41">');
  32. document.writeln('   <frame name=logo src=logo.htm scrolling=no marginwidth=0 marginheight=0 NORESIZE frameborder=no>');
  33. document.writeln('   <frame name="naviSmall" src="naviSmall.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  34. document.writeln('   <frame name="menuGauche" src="menu.htm" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  35. document.writeln('   <frame name="copyright" src="copyright.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  36. document.writeln('  </frameset>');
  37. document.writeln('  <frameset rows="65,*,20">');
  38. document.writeln('   <frame name="upFrame" src="upframe.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  39. document.writeln('   <frame name="content" src="accueil.htm" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  40. document.writeln('   <frame name="downFrame" src="downframe.htm" scrolling="no" marginwidth=0 marginheight=0 NORESIZE frameborder="no">');
  41. document.writeln('  </frameset>');
  42. document.writeln('</frameset>');
  43. document.writeln('<noframes>');
  44. document.writeln('<body>');
  45. document.writeln('<font face="Arial" size=5>We are sorry but your browser does not support frame.<br>');
  46. document.writeln('Please update your favorite browser and come after ;<br>');
  47. document.writeln('<ul type="disc">');
  48. document.writeln('  <li><a href="http://www.microsoft.com">Internet Explorer</a>');
  49. document.writeln('  <li><a href="http://www.netscape.com">Netscape</a>');
  50. document.writeln('</ul>');
  51. document.writeln('</font>');
  52. document.writeln('</body>');
  53. document.writeln('</noframes>');
  54. document.writeln('</html>');
  55. //-->
  56. </script>
  57. <noscript>
  58. <body>
  59. <font size=3>
  60.   <b>Please wait during loading ....<br> If this page stay here, it's probabily because your
  61.   browser can not diplay it.<br>We advise you to download and install the last version of Internet
  62. Explorer or Netscape.<br> Thank you for your comprehension.
  63. <ul type="disc">
  64.   <li><a href="http://www.microsoft.com">Internet Explorer</a>
  65.   <li><a href="http://www.netscape.com">Netscape</a>
  66.   </ul>
  67. </b>
  68. </font>
  69. </body>
  70. </noscript>
  71. </html>

n°115566
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 13:22:04  profilanswer
 

yes d'la balle ça marche !!
 
Mais je vois pas trop ce que t'as fait ?  :heink:  
 
mais merci  bpc  :jap:

n°115568
gizmo
Posté le 21-03-2002 à 13:26:22  profilanswer
 

c'est simple, j'ai mis le body dans <noscript> comme ca il n'est lu que si le browser ne supporte pas le js et j'ai viré l'appel de la fonction.

n°115574
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 13:33:19  profilanswer
 

ouais ok ok.
 
Bon maintenant c tout mes script qui deconnent ...
 
Commenbt se comporte opera avec des javascript ? car les miens ont tous la forme :
if (dom)  
 
else if (ns4)
 
else if (ie)
 
 
et là bin je sais aps trop dans quel cas il rentre et surtout si il se comporte plutot comme IE ou comme NS, ou si il a son comportement bien a lui ...
j'ai essayer de mettre des alert("!" ) dans chacun des cas : il n'y a jamais d'alert, mais il faut qd meme des trucs contenus dans ces if  :??:  
 
Z'auriez pas une url pour la compatibilité opera ?

 

[jfdsdjhfuetppo]--Message édité par petoulachi--[/jfdsdjhfuetppo]

n°115592
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 13:46:33  profilanswer
 

petoulachi a écrit a écrit :

ouais ok ok.
 
Bon maintenant c tout mes script qui deconnent ...
 
Commenbt se comporte opera avec des javascript ? car les miens ont tous la forme :
if (dom)  
 
else if (ns4)
 
else if (ie)
 
 
et là bin je sais aps trop dans quel cas il rentre et surtout si il se comporte plutot comme IE ou comme NS, ou si il a son comportement bien a lui ...
j'ai essayer de mettre des alert("!" ) dans chacun des cas : il n'y a jamais d'alert, mais il faut qd meme des trucs contenus dans ces if  :??:  
 
Z'auriez pas une url pour la compatibilité opera ?  
 
 




 
ha merde, en fait alert lui il s'en fout, ça marche jamais ....
arggg et cmment que je fais moa ?

n°115604
gizmo
Posté le 21-03-2002 à 14:07:43  profilanswer
 

alert() fonctionne sous opéra, je l'ai déja testé, ca doit être ta syntaxe qui n'est pas bonne. Sinon Opéra se comporte exactemtn comme le STANDARD javascript 1.3, excepté pour la modification on-the-fly du contenu d'une page, fonction qui n'est pas encore intégrée.
 
Les if(IE) et autres fioritures ne servent a rien car il peut se faire passer soit pour IE, soit pour mozilla (donc ns) soit pour opéra au gré de l'utilisateur.

n°115607
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 14:10:58  profilanswer
 

gizmo a écrit a écrit :

alert() fonctionne sous opéra, je l'ai déja testé, ca doit être ta syntaxe qui n'est pas bonne. Sinon Opéra se comporte exactemtn comme le STANDARD javascript 1.3, excepté pour la modification on-the-fly du contenu d'une page, fonction qui n'est pas encore intégrée.
 
Les if(IE) et autres fioritures ne servent a rien car il peut se faire passer soit pour IE, soit pour mozilla (donc ns) soit pour opéra au gré de l'utilisateur.  




arg, je c pas trop comment je v me debrouiller alors.
 
Mais pour le alert, bin en faisant un bete window.alert("!" ); lui ne fait rien

n°115615
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 14:32:56  profilanswer
 

et puis si je peux pas distinguer de if (IE) and co, je peux pas faire marcher le site !!! ex, pour acceder a un id on fait
document.getElementById(id).  (pour IE5+ et NS6)
document.all[id]. (pour IE4)
et  
with (eval('document.'+id)) (pour NS4)
 
Alors je sis un peu dans la merde si jep eux pas faire ça  :sweat:

n°115630
gizmo
Posté le 21-03-2002 à 14:49:07  profilanswer
 

pk t'as besoin d'un id?

n°115634
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 14:51:17  profilanswer
 

en fait, je manipule des div ; j'ai besoin d'acceder a ces div pour modifier la couleur par ex.

n°115642
gizmo
Posté le 21-03-2002 à 14:55:08  profilanswer
 

ah! dans ce cas, essaye de le mettre au niveau de IE. Mais je suis pas sur que les changement de couleurs soient standards.

n°115649
petoulachi
A fortiori, brigadier chef
Posté le 21-03-2002 à 15:01:56  profilanswer
 

gizmo a écrit a écrit :

ah! dans ce cas, essaye de le mettre au niveau de IE. Mais je suis pas sur que les changement de couleurs soient standards.  




he non bien sur....
ptin meme pour la date ça chie : il rentre dans la condition if (document.all), et meme dans la navigator.appname = "IE" (meme si c pas IE mais Microsoft ...) MAIS ne se comporte pas comme IE pour l'année.
De meme pour les styles ...
 
I am dans le caca ...

mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation

  [OPERA] mon site ne marche pas du tout avec opera (pb de JavaScript)

 

Sujets relatifs
[hmtl] Une page qui marche ds l'editeur et mais pas sur le net ?????[Javascript] Erreur de syntaxe...
[Javascript] Comment demarrer avec une page en popup[Javascript] Récupérer la position d'une image
Javascript fermeture de fenêtre...Javascript et balises DIV...
[Javascript, Formulaire HTML] champs INPUT disabled n'apparaissent pasformulaire javascript
[Javascript] Comment faire un pop-up en sortie de site ? 
Plus de sujets relatifs à : [OPERA] mon site ne marche pas du tout avec opera (pb de JavaScript)


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR