FF et les scripts JS

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 !
veevee
Salamandre
Messages : 36
Inscription : 14 nov. 2004, 23:15

Message par veevee »

Bonjour,

je tire deux conclusions de ce que dit Benoit :

window.write ne s'utilise que dans le corps de la page HTML (donc dans un script appelé "au milieu" d'une page HTML)


Concernant BREAK
Pour sortir de TOUTE la fonction il faut changer la valeur de la variable qui "drive" la boucle
Mais si plusieurs boucles + conditions sont imbriquées, ça ne simplifie pas les choses

Y a-t-il une raison autre que la coutume pour ne pas utiliser BREAK

Dans mon cas je teste la validité d'une adresse email
Je teste la présence du @ si pas là, on sort de la fonction
Je teste la présence du . après le nom de domaine, et on sort si...
Je teste le suffixe ; si un caractère ou + de 3
caractères, on sort...

Je trouvais que BREAK était bien adapté à ce genre de situation

Et puis je ne veux pas conseiller des niaiseries aux neuneux qui liront (peut-être) mes élucubrations


Merci
+++++++++++++++++
Les ignorants ont des certitudes
Ceux qui savent n'ont que des doutes
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Oui l'absence d'un @ dans une adresse e-mail est bien un cas "inattendu" où un break peut se justifier (par exemple si ta boucle vérifie une dizaine d'adresses e-mail).

Mais dans le cas d'une seule adresse, il n'est pas nécessaire de faire une boucle, c'est plutôt de ta fonction de vérification que tu veux sortir, donc c'est plutôt return que tu vas utiliser (a priori même return false si c'est un contrôle de champ de formulaire).
veevee
Salamandre
Messages : 36
Inscription : 14 nov. 2004, 23:15

Message par veevee »

Bonjour,

Je crois avoir trouvé MON explication au comportement "erratique" de document.write()

J'a mis en place deux manières d'appeler cette instruction :
http://mistervideo.free.fr/tester_write.html
et
http://mistervideo.free.fr/tester_write2.html

les résultats sont TRES différents

J'en conclue que la "BONNE" manière d'appeler ce genre de script est de l'appeler dans le cours de la page HTML.
L'appeler à partir d'un bouton cliqué, bien que non-contraire à la sémantique, ne provoque pas des résultats prévisibles

Votre avis m'importe
+++++++++++++++++
Les ignorants ont des certitudes
Ceux qui savent n'ont que des doutes
veevee
Salamandre
Messages : 36
Inscription : 14 nov. 2004, 23:15

Message par veevee »

Bonsoir,

nouvelle surprise :
un script avec la "fameuse" commande :
<SCRIPT LANGUAGE="JavaScript">
function fonction(){
document.write("<DIV ALIGN='center'><FONT SIZE=5><B>ceci est écrit par le script JS</B></FONT></DIV>")
}
</SCRIPT>

Si on appelle la fonction par un onClick, FF "se plante" (anomalie décrite plus haut dans le fil)

mais si on l'appelle par
<SCRIPT>fonction()</SCRIPT>

FF effectue la tâche, puis s'arrête normalement

Curieux, non ?
+++++++++++++++++
Les ignorants ont des certitudes
Ceux qui savent n'ont que des doutes
Mirovinben
Lézard vert
Messages : 194
Inscription : 13 nov. 2004, 08:54

Message par Mirovinben »

:shock: Pas curieux... normal surtout après tout ce qui a été dit :wink: :

-1- onclick est un événement qui est traité APRES que toute la page aie été chargée... donc après la balise </body>, donc création d'un nouveau document qui merde...

-2- le javascript dans le corps de la page est exécuté au moment où il est appelé, donc avant que le navigateur aie fini d'interpréter et d'afficher les instructions da la page...
Bienheureux les fêlés car ils laissent passer la lumière...
poof65
Arias
Messages : 13
Inscription : 22 janv. 2005, 03:48

Message par poof65 »

Pour en revenir au sujet du début il faudrait tester ça avec FF.

Code : Tout sélectionner

document.open();
document.write('Coucou');
document.close();
qui est la syntaxe correcte pour ecrire une nouvelle page (pareil pour les popup générées entièrement par javascript.[/quote]
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

Autant utiliser le DOM à ce moment-là non ? Enfin sauf si c'est pour écrire juste "coucou" mais on dépasse rapidement ce stade en général :)
poof65
Arias
Messages : 13
Inscription : 22 janv. 2005, 03:48

Message par poof65 »

Enfin bon c'est qu'un exemple très basique.
COmment tu ferais pour changer complètement le body d'une page avec le DOM ?
Benoit
Administrateur
Messages : 4894
Inscription : 19 juil. 2003, 10:59

Message par Benoit »

En y ajoutant et en y enlevant des éléments, voir la page précédente du sujet.
Répondre

Qui est en ligne ?

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