OVH Cloud OVH Cloud

[HELP] Problème de rafraichissement de couleurs

22 réponses
Avatar
John
Bonjour,
j'ai fait un script pour réŽviser du voc qui affiche alŽatoirement
les éŽléŽments d'une liste (voir ci-dessous). Le problème c'est que je
voudrais que les couleurs du texte, du fond de tableau et même du fond
de fenêtre, puissent changer aléŽatoirement ˆà condition que la
variable Bmod (par ex.) soit ˆ 1. Or le texte change mais pas ces
couleurs qui sont donnŽées une fois pour toutes. Quelqu'un pourrait-il
me dire ce qui cloche?

Merci d'avance,

John


<html><head>
<meta name=appl centent=linguae>
<script language='javascript'>
var Colors=new Array();
var Version=new Array();
var Theme=new Array();
var Question;
var Answer;
var Sense=1;
var Qptr;
var Bptr;
var Pcol="CCCCCC";
var Bcol="";
var Fcol="006666>";
var Pmod="";
var Bmod="1";
var Fmod="";

Colors[0]="00FF00";
Colors[1]="009933";
Colors[2]="006666";
Colors[3]="33FFCC";
Colors[4]="00FFFF";
Colors[5]="33CCCC";
Colors[6]="0099FF";
Colors[7]="0033FF";
Colors[8]="663399";
Colors[9]="9933CC";
Colors[10]="CC33FF";
Colors[11]="660066";
Colors[12]="999966";
Colors[13]="996666";
Colors[14]="996600";
Colors[15]="660000";
Colors[16]="FFCCCC";
Colors[17]="FF3366";
Colors[18]="CC0000";
Colors[19]="990000";
Colors[20]="FFFF99";
Colors[21]="FFFF00";
Colors[22]="FFCC00";
Colors[23]="FF9900";
Colors[24]="000000";
Colors[25]="CCCCCC";
Colors[26]="CCCC00";
Colors[27]="FFFFFF";

Version[0]="&#960;&#945;&#953;&#948;&#949;&#8059;&#969; ";
Theme[0]=" j'&eacute;duque, j'&eacute;l&egrave;ve";
Version[1]="&#955;&#8051;&#947;&#969; ";
Theme[1]=" je dis, je parle, j'appelle";
Version[2]="&#947;&#961;&#8049;&#966;&#969; ";
Theme[2]=" j'&eacute;cris, je dessine";
Version[3]="&#7973;&#954;&#969; ";
Theme[3]=" je viens, je suis l&agrave;";
Version[4]="&#955;&#949;&#8055;&#960;&#969; ";
Theme[4]=" je laisse, je quitte";
Version[5]="&#966;&#8051;&#961;&#969; ";
Theme[5]=" je porte, j'apporte, je supporte";
Version[6]="&#956;&#8051;&#957;... &#948;&#8051; ";
Theme[6]=" d'une part... d'autre part; (certes)... mais; ... et...";
Version[7]="&#954;&#945;&#8055; ";
Theme[7]=" et; m&ecirc;me, aussi";
Version[8]="&#957;&#8166;&#957; ";
Theme[8]=" maintenant";
Version[9]="&#7956;&#960;&#949;&#953;&#964;&#945; ";
Theme[9]=" ensuite";
Version[10]="&#960;&#945;&#953;&#948;&#949;&#8059;&#949;&#964;&#949; ";
Theme[10]=" est-ce que vous &eacute;duquez?";

function Disp(fld1,fld2){
Qptr = Math.round(Math.random()*(Theme.length-1));
if (Sense == 1) { Question = Theme[Qptr] }
if (Sense == 2) { Question = Version[Qptr] }
if (Bmod == 1) {
Bptr = Math.round(Math.random()*(Colors.length-1));
Bcol = Colors[Bptr];
}
} if(document.getElementById) {
document.getElementById(fld1).innerHTML = Question;
document.getElementById(fld2).innerHTML = '';
}
else alert('Sorry: incompatible browser.');
}
function Trad(fld){
if (Sense == 1) { Answer = Version[Qptr] }
if (Sense == 2) { Answer = Theme[Qptr] }
if(document.getElementById)
document.getElementById(fld).innerHTML = Answer ;
else alert('Sorry:incompatible browser.');
}
function Ordr(){
if (Sense == 1) { Sense = 2 }
else { Sense = 1 }
}

</script>
</head>
<body>
<script language='javascript'>
document.write('<body bgcolor='+ Pcol +' onLoad="Disp(\'quest\',\'answ\')">');
document.write('<br>&nbsp;&nbsp;&nbsp;');
document.write('<input type=button value=\' -> \' ');
document.write('onClick="Disp(\'quest\',\'answ\')">');
document.write('<input type=checkbox value=on onChange="Ordr()">');
document.write('<input type=button value=\' = \'
onClick="Trad(\'answ\')">'); document.write('<br><br><br><br><br><br>');
document.write('<blockquote><p align=center>'); document.write('<table
bgcolor=' + Bcol + ' cellpadding=30 border=0>');
document.write('<tbody>'); document.write('<tr>');
document.write('<td align=center>');
document.write('<h1><font color=\''+ Fcol +'\' size=+3><div
id=\'quest\'>'); document.write('</div></font></h1>');
document.write('</td>');
document.write('</tr>');
document.write('<tr>');
document.write('<td align=center>');
document.write('<h1><b><font color=\''+ Fcol +'\' size=+4><div
id=\'answ\'>'); document.write('</div></font></b></h1>');
document.write('</td>');
document.write('</tr>');
document.write('</tbody>');
document.write('</table>');
document.write('</p></blockquote>');
document.write('</body>');
</script>
</html>

10 réponses

1 2 3
Avatar
ASM
Le 24/03/2006 12:23, ASM a écrit plein de choses intéressantes, dont :

Je profite pour signaler que mon IE Mac est infichu d'afficher toutes
les lettres grecques employées dans cette démo.


As-tu installé toutes les polices nécessaires ?


j'ai dit IE Mac
sous-entendu : les autres trouvent toutes les polices (russes
vietnamiennes étoussa)

(charset compatible alphabet grec)


En l'occurrence, c'est inutile ici (tout son code est en ascii 7bits),
et de plus cela ne changera rien à ton problème d'affichage. On peut
très bien afficher du grec avec un charset prévu pour le français, ou
du japonais avec un charset prévu pour l'hébreu.


j'avais par ailleurs idéalisé : utf-8
sous-entendu "écrit en utf-8" et charsetté de même.
c a d : pas avec des entités inconnues du brouteur ...

Comme je ne connais pas l'alphabet grecque, je n'ai pas essayé voir si
ce IE en utf-8 y comprenait qque chose

Par exemple, la page <http://www.miakinen.net/vrac/charsets/> est servie
en ISO-8859-1, ce qui ne l'empêche pas d'afficher des lettres grecques
dans la partie consacrée à CP437. Et même plus que ça : tous les
caractères que tu vois sur un fond autre que blanc ou gris sont en
dehors du charset de la page.


Mon IE n'arrive rien à faire avec ça : erreurs de script
Je passe en mode sans JS ni CSS
et j'ai beaucoup de ? ? ?
Bon, là aussi c'est en entités : &#60;

de tte façon, c'est pour l'anecdote,
on sait bien que IE et blablabla et blablabla et blablabla.

Cet IE est débile de chez débile, même ici il n'y arrive pas
http://www.lexilogos.com/traduction_multilingue.htm
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
et c'est bien l'utf-8 qu'il a sélectionné ! :-(

--
Stephane Moriaux et son [moins] vieux Mac


Avatar
ASM
On Fri, 24 Mar 2006 12:39:09 +0100, Olivier Miakinen wrote:

As-tu installé toutes les polices nécessaires ?



Je n'ai jamais eu à installer une police spécialement pour IE. Sous Mac
OSX normalement Lucida Grande est sensée fournir le grec polytonique.


même en forçant sur l'utilisation de Lucida Grande, ça n'arrange rien.
Times non plus ...

Une idée?


à mon avis :
IE ne connaît pas ces trucs et il ne connaît pas ces trucs.

--
Stephane Moriaux et son [moins] vieux Mac


Avatar
John
On Fri, 24 Mar 2006 14:31:38 +0100, ASM wrote:

Je n'ai jamais eu à installer une police spécialement pour IE. Sous
Mac OSX normalement Lucida Grande est sensée fournir le grec
polytonique.


même en forçant sur l'utilisation de Lucida Grande, ça n'arrange
rien. Times non plus ...

Une idée?


à mon avis :
IE ne connaît pas ces trucs et il ne connaît pas ces trucs.


En fait je me suis mal exprimé, ce que je voulais dire c'est que sur
mon OSX 10.2.8 je n'arrive pas à obtenir le comportement "grec", ni
"hébreu", ni "Unicode hex" dans le menu Langues du Finder (fixé à
partir de Preférences-> International), pourtant ça marche avec
Français ou Japonais, et j'ai Lucida Grande qui contient les car grecs
(pour l'hébreu je ne sais pas).

Toujours pas d'idée?


Avatar
ASM

En fait je me suis mal exprimé, ce que je voulais dire c'est que sur
mon OSX 10.2.8 je n'arrive pas à obtenir le comportement "grec", ni
"hébreu", ni "Unicode hex" dans le menu Langues du Finder (fixé à
partir de Preférences-> International),


Là j'ai (OsX 10.3.9)
- onglet Saisies :
y sont sélectionnés : claviers Français et Français numérique
plus Palettes de caractères et Visualisateur clavier.
La case 'afficher dans la barre des menus' est cochée
- onglet Langues :
sélectionnées : quelques langues européennes
+ des langues asiatiques inconnues ... tiens ? curious ...
c'est écrit dans le format du pays comme pour le russe par exemple
Non, pas installé le grec.
et c'est tout, pas vu d'histoires de comportements.

Toujours pas d'idée?


dans barre des menus à droite : clavier / Palette de caractères
- Affichage : Unicode
- onglet : Blocs Unicodes
menu de gauche : Greek Extended
panneau de droite avec tous les caractères
exemple : lettre ὠ (omega psili) me dit
- unicode : 1F60
- UTF8 : E1 BD A0
info du milieu : les caractères associés
exemple : ᾫ (capitale omega et dasia)
unicode : 1FAB utf-8 : E1 BE AB
- onglet : Tableau Unicode
dans le genre 'moyen interressant' :
un tableau de tous les caractères disponibles en vrac

Dans la même veine, et si tu as la patience, regarde ce jouet de 256
tables absolument inexploitable (fichier léger mais gros calcul pour
l'ordi) :
http://perso.wanadoo.fr/stephane.moriaux/truc/cree-256_listes_caracteres.htm
tout rangé n'importe comment, mais les trucs grecs ont l'air d'etre pour
la plupart vers les tables 4 et 5

Je viens d'installer le clavier grec -> je teste la frappe directe :
αβγν ΑΒΓΝ όήΏΚύ
il faudra régler l'encodage du maileur en utf-8 pour le lire je suppose.
(rappel, la langue grecque n'est pas installée sur mon crincrin)

--
Stephane Moriaux et son [moins] vieux Mac

Avatar
John
On Fri, 24 Mar 2006 23:09:39 +0100, ASM wrote:

et c'est tout, pas vu d'histoires de comportements.


oui j'entends par là: menus, fontes, clavier etc.., ce que tu appelles la
"langue" grecque quoi..

suppose. (rappel, la langue grecque n'est pas installée sur mon
crincrin)


Sur le mien non plus et mon disque d'installation ne me la propose pas non
plus. Dommage, je me demande si on peut l'obtenir séparément. Mais bon.

Merci encore! a+

Avatar
Olivier Miakinen

j'ai dit IE Mac


Ok. Cela explique donc pourquoi ça ne marche pas, mais ce n'était pas le
point essentiel que j'ai voulu souligner en te répondant.

(charset compatible alphabet grec)


En l'occurrence, c'est inutile ici (tout son code est en ascii 7bits),
et de plus cela ne changera rien à ton problème d'affichage. On peut
très bien afficher du grec avec un charset prévu pour le français, ou
du japonais avec un charset prévu pour l'hébreu.



Voilà. Ce que je voulais dire, c'est que si ça ne marche pas sur IE Mac
avec les entités numériques, ce n'est pas en précisant un charset UTF-8
que ça marchera mieux. Tu semblais supposer que le choix du charset
influe sur le comportement des &#nnn; et c'est ça qui est faux (quel
que soit le navigateur).

Cordialement,
--
Olivier Miakinen



Avatar
ASM

Voilà. Ce que je voulais dire, c'est que si ça ne marche pas sur IE Mac
avec les entités numériques, ce n'est pas en précisant un charset UTF-8
que ça marchera mieux. Tu semblais supposer que le choix du charset
influe sur le comportement des &#nnn; et c'est ça qui est faux (quel
que soit le navigateur).


non ... bien évidemment que de stipuler un charset ne transforme-traduit
pas le document d'un type d'écriture à l'autre.
Je pensais : écrit en utf-8 (avec meta charset utf-8)

Oui, j'espérais que l'idiot IE pouvait ne pas connaître quelques entités
et que s'il disait connaître l'utf-8 c'était vrai.
Il s'avère que non.

Maintenant, il est possible que l'étendue de l'utf-8 ait évolué depuis
la sortie de cet IE.
(il paraît que ces normes changent mais pas leurs appellations)

--
Stephane Moriaux et son [moins] vieux Mac

Avatar
Olivier Miakinen

Voilà. Ce que je voulais dire, c'est que si ça ne marche pas sur IE Mac
avec les entités numériques, ce n'est pas en précisant un charset UTF-8
que ça marchera mieux. Tu semblais supposer que le choix du charset
influe sur le comportement des &#nnn; et c'est ça qui est faux (quel
que soit le navigateur).


non ... bien évidemment que de stipuler un charset ne transforme-traduit
pas le document d'un type d'écriture à l'autre.
Je pensais : écrit en utf-8 (avec meta charset utf-8)


C'est exactement la même chose. Obtenir l'entier 937, qui est le
numéro Unicode du caractère Oméga, n'est pas plus difficile à partir
de l'entité numérique &#937; qu'à partir de l'encodage UTF-8 : CE A9.

Si un navigateur sait afficher le caractère numéroté 937 à partir de
« CE A9 », il saura aussi bien le faire à partir de « &#937; ».

Oui, j'espérais que l'idiot IE pouvait ne pas connaître quelques entités
et que s'il disait connaître l'utf-8 c'était vrai.
Il s'avère que non.


Attention, il s'agissait bien ici d'entités *numériques*, d'où mon
étonnement face à ta réaction. Mais bien sûr, si tu avais cru qu'il
s'agissait de l'entité *nommée* &Omega; alors tout s'explique.

Maintenant, il est possible que l'étendue de l'utf-8 ait évolué depuis
la sortie de cet IE.


L'étendue de l'UTF-8 a été définie pour tous les numéros de caractères
entre 0 et 2 147 483 647 (7FFFFFFF hexa), même si elle a ensuite été
réduite à 1 114 111 (10FFFF hexa). Par conséquent, aucun problème pour
les caractères grecs dont 937 (3A9 hexa).


Avatar
ASM

Oui, j'espérais que l'idiot IE pouvait ne pas connaître quelques entités
et que s'il disait connaître l'utf-8 c'était vrai.
Il s'avère que non.


Attention, il s'agissait bien ici d'entités *numériques*, d'où mon
étonnement face à ta réaction. Mais bien sûr, si tu avais cru qu'il
s'agissait de l'entité *nommée* &Omega; alors tout s'explique.


Je ne vois pas pourquoi tu t'étonnes que je me méfie d'IE :-)

Maintenant, il est possible que l'étendue de l'utf-8 ait évolué depuis
la sortie de cet IE.


L'étendue de l'UTF-8 a été définie pour tous les numéros de caractères
entre 0 et 2 147 483 647 (7FFFFFFF hexa), même si elle a ensuite été
réduite à 1 114 111 (10FFFF hexa). Par conséquent, aucun problème pour
les caractères grecs dont 937 (3A9 hexa).


Alors mon IE a des trous de mémoire.
Faudrait que j'essaie avec NC 4.5 :-)


--
Stephane Moriaux et son [moins] vieux Mac


Avatar
ASM

Alors mon IE a des trous de mémoire.
Faudrait que j'essaie avec NC 4.5 :-)


Ils font tous 2 les mêmes erreurs en utf-8 :
ils ne connaissent pas les lettres grecques accentuées.


--
Stephane Moriaux et son [moins] vieux Mac

1 2 3