DIFFÉRENCES EN JAVASCRIPT [DJ]

XtremDuke Messages postés 626 Date d'inscription samedi 28 septembre 2002 Statut Membre Dernière intervention 18 mai 2009 - 20 sept. 2007 à 13:09
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 - 3 oct. 2007 à 11:10
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/44129-differences-en-javascript-dj

cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
3 oct. 2007 à 11:10
>>j'aime bien les framework
en production, dans le taf... c'est sûr, aucun doute.
quoique... je disais dans DINDE justement, d'opter pour
un 'générateur d'applications', un L4G... !
entre nous, les "framework JavaScript", c'est plus
du style bibliothèques d'outils que Framework "au sens noble".
au boulot, c'est ce que je ferais, là aussi sans aucun doute.
on ne s'y amuse pas, il faut produire... vite ( et bien ? )
Cordialement.
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
2 oct. 2007 à 19:44
@Bultez => ouais; ben pour être franc, c'est pour ça que j'aime bien les framework js en général. je me suis attaché à prototype après être passé par jquery, mais ce dernier est vraient trop lent pour les sélections. Certes, il y a un fichier de près de 100ko à se trainer...mais bon, 100ko de nos jours, en link, ça ne représente plus grand chose; et ça évite de réécrire soi-même les mêmes méthodes, finalement.
Je vais uyn peu plus loin que ce tuto même si je devrais poster sur ton autre code, mais bon... : ton petit framework DINDE est, dans ce sens, une bonne initiative aussi. Néanmoins...:-)...on utilise rarement QUE les évènements. Certes, c'est une grosse partie d'une interface utilisateur réussie. Mais attaquer le DOM pour ajouter, ôter des éléments, les modifier etc...ça va quand même souvent avec. Et là, DINDE ne suffit plus : soit on réécrit la majorité des méthodes dont on a besoin (sélecteurs css, récupération d'attributs, etc...) pour avoir une base portable, soit...on se dit que finalement, un prototype, un jquery, un moo, un dojo...font tout ça très bien, et on abandonne ton DINDE, si sympa soit-il. C'est très différent d'un langage serveur ou on a souvent besoin que d'un framework très spécialisé, en fait, et ou on peut donc se passer de frameworks lourds et indigestes qui font tout -bien ou mal-, et donc trop. En js, il y a un bundle inévitable. Et en js, il y a la question cruciale de la portabilité, surtout...
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
29 sept. 2007 à 09:00
merci Malalam,
effectivement tu as raison, il faut regarder de
ce coté là... et trouver des exemples simples.
>>...il y a des différences entre chaque...
hélas. @+
malalam Messages postés 10839 Date d'inscription lundi 24 février 2003 Statut Membre Dernière intervention 2 mars 2010 25
28 sept. 2007 à 18:04
@Bultez => Bonne initiative, très bonne.
Pour continuer ce que dit _XTremDuke, un exemple : regarde toutes les fonctions DOM relatives aux attributs sous IE (getAttribute et cie) Voire getElementsByTagName(). Tu verras vite le bordel. En effet, le respect du DOM n'est pas acquis sur tous les navigateurs (en fait, le vrai respect, sur aucun...et il y a des différences entre chaque).
apxa Messages postés 188 Date d'inscription mercredi 15 mai 2002 Statut Membre Dernière intervention 25 avril 2009
21 sept. 2007 à 21:37
iop all,
ce qui serait plutôt utile c'est de tenir compte des validation W3C XHTML

Have Fun ;)
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
21 sept. 2007 à 06:00
tu n'as pas à être désolé, loin de là.
primo c'est toujours enrichissant d'avoir
les avis des autres, surtout quand c'est
constructif. merci à toi.
popGG Messages postés 23 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 9 novembre 2007
20 sept. 2007 à 17:42
Pour l'abbréviation $("toto"), j'ai fumé je crois, mais je maintiens que tu devrais regarder le fichier... On y trouve des choses intéressante et avec une compatibilité sur une bonne partie(je pense) des navigateurs. Voici un exemple de morceau de code dont je voulais attirer ton attention:

"
pointerX: function(event) {
return event.pageX || (event.clientX +
(document.documentElement.scrollLeft || document.body.scrollLeft));
},

pointerY: function(event) {
return event.pageY || (event.clientY +
(document.documentElement.scrollTop || document.body.scrollTop));
},
"

Ici, pour l'histoire de "la position de la souris", tu pourras implémenter le tout en 2-3 lignes juste en utilisant ces 2 fonctions. C'est pour ça que j'ai dit que ça méritait sa propre colonne. M'enfin c'est toi qui choisie. Pour moi, ce fichier devriendra bientôt (si ce n'est déjà pas fait) un incontournable.

---------------------

Définition d'un toturial:
"Programme de présentation qui guide l'utilisateur dans l'apprentissage et la mise en oeuvre d'un matériel ou d'un logiciel.

Le tutoriel peut inclure un manuel d'apprentissage ou un ensemble d'exercices programmés.
"

Donc un batch peut très bien faire parties des tutoriaux. Mais comme je te l'ai dit, tu fais ce que tu veux. Moi je proposes, c'est tout.

---------------------

Pour permettre de t'auto-évaluer sur le niveau de ta source (je parle d'implémentation)
Tu dois te poser ces questions:
"Tout le monde peut retoucher facilement mon code? Est-ce que j'utilise de simple fonction de base sans comprendre toute
la beauté de la fonction?"
Si la réponse est un "oui clair" ou un "j'ai tout pris sur une autre source"-> tu tapes 1
Si la réponse est oui et non, c'est quand même un code recherché utilisant des outils puissants -> tu tapes 2
Si la réponse est "si une personne rentre dans le code, il va au moins lui falloir qq jours pour tout comprendre (bon, il a des experts ici, dont je ne fais pas partie, qui vont tout comprendre en peu de temps)" -> là tu tapes 3

Moi, ici je vois des outils très performants tels que le XML et le XSL qui méritent qu'on s'y intéresse. Je n'ai pas regardé tout le code mais je sais qu'il y a peu de personne qui maitrise parfaitement ces outils. Personnellement, je viens de découvrir
aujourd'hui la puissance du XLS grâce à toi. (Surement que d'autres sources ont été faites à ce sujet mais je ne cherchais pas donc ça tombe sur toi ;b)

Désolé pour l'explication d'une page. (Au moins ça montre mon intérêt pour cette source)

Bonne continuation
cs_bultez Messages postés 13615 Date d'inscription jeudi 13 février 2003 Statut Membre Dernière intervention 15 octobre 2013 30
20 sept. 2007 à 13:34
_XTremDuke
>>là aussi quelques differences
peux-tu nous en dire un ch'tit poil de plus ?
je n'y avais pas pensé, sur le coup...

_popGG
>>incompatibilités fastidieuses
oh oui.
>>document.getElementById("toto") remplacé $("toto")
ça fonctionne avec tous (?) les navigateurs
c'est simplement une "abréviation" ( return d'une fonction )
>>je te conseille de l'ajouter dans les tutos
c'est dans tutos.
pas dans "tutoriaux", car on peut dire, pour simplifier !,
que ce qu'on y poste c'est "du texte", pas "une application".
>>niveau débutant
en fait, depuis toujours, je ne sais pas si ce niveau, c'est pour
les lecteurs, pour ceux qui postent, pour ceux qui vont utiliser
sans regarder les sources...
à mon avis, c'est plus "aux autres" de dire quel est le niveau
( mais pour qui ? )

en tous cas, merci de vos avis
popGG Messages postés 23 Date d'inscription mardi 31 mai 2005 Statut Membre Dernière intervention 9 novembre 2007
20 sept. 2007 à 13:17
L'idée est très intéressante car j'avoue que ces incompatibilités peuvent être assez fastidieux à certains moments. Avoir un document que l'on puisse utilisé facilement et qui soit entièrement visuel (pas trop de blabla, juste des faits), bah j'apprécie beaucoup.

Bon, il te reste à compléter bien sûr... Bien que IE représente 95% des navigateurs utilisés... Tu devrais au moins rajouter les navigateurs suivants: netscape,opera et safari. Au moins, je te conseille de les installer sur ta machine et de tester tes batchs de test avec.

Je pense que tu devrais également te renseigner sur le fichier prototype.js. Celui-ci pourrait te servir comme source d'inspiration à l'avenir. Je serais toi, j'ajouterais une colonne également pour le fichier prototype. (c'est toujours cool de savoir que le document.getElementById("toto") peut être remplacé par un simple $("toto") et être compatible tout navigateur, tu vois ce que je veux dire?)

En tout cas, j'attends la suite car ça me semble une bonne idée. Une fois finie, je te conseille de l'ajouter dans les totu.

Bonne chance pour la suite,

Une dernière chose... Tout ton application est écrit en xls, je ne pense pas que le niveau d'implémentation utilisé soit de niveau débutant (mais ce n'est que mon avis)

@+
XtremDuke Messages postés 626 Date d'inscription samedi 28 septembre 2002 Statut Membre Dernière intervention 18 mai 2009 4
20 sept. 2007 à 13:09
Prends tu en compte le parcour du DOM ? Car il y a là aussi quelques difference.
Rejoignez-nous