Un pote qui avait fait son site IE only est en train de l'adapter pour qu'il soit utilisable avec la gecko-family. (surtout son forum actuellement)
Mais il peste actuellement sur 2 choses qui lui font dire "Les standards c'est de la merde, les ajouts de MS sont tres bien. Pourquoi les autres n'en veulent pas?"
1) Vous connaissez les tags pour le gras et autres,... Il y a des boutons/images pour les insérer au milieu du texte à poster, à l'endroit où était le curseur. ben, "Si y a pas ca dans les standards, c'est de la merde leur standard!" (c)
2) Il l'a décrit mieux que je ne pourrais le faire à cette adresse : http://www.allhtml.com/forum/index.php?t=l&f=2&i=409276(...)
Je me suis même demandé si ce point ne méritait pas une inscription au bugzilla mais je ne veux pas y mettre de betise...
J'ai tellement ralé pour qu'il s'y mette que maintenant je ne voudrais pas que ca reste en plan.
Alors si quelqu'un aurait des idées pour donner un coup de main et le ramener dans le droit chemin, ce serait vraiment sympa. ;-)
Merci d'avance
# Barre d'outils
Posté par Olivier Meunier (site web personnel) . Évalué à 5.
Les moyens de récupérer des sélection ou la position du curseur texte dans un textarea ne sont pas dans le DOM en effet. Mais (et oui) Gecko et IE ont un moyen de le faire proprement.
Je te conseille de jeter un oeil à la barre d'outils de Trac, une des plus clean que j'ai vu jusqu'à présent :
http://projects.edgewall.com/trac/wiki/SandBox?edit=yes(...)
Je suis parti de ça pour faire la même chose dans dotclear, ça marche vraiment bien.
Comme ce système utilise des propriétés qui ne sont pas le DOM du W3C, ça ne marche pas avec Konqueror, Safari ou Opera. Et je ne suis même pas certain qu'on puisse faire un outil comme ça pour ces navigateurs.
# Oui mais...
Posté par Lorrainezo . Évalué à 2.
Pour le 2) avec le code qu'il donne on ne peux pas savoir où ça cloche puisqu'il n'y a pas les balises ni tous les autres trucs qu'il a dû rajouté. Avec le lien vers la page, on pourrait en savoir plus.
# Réconcilier, avec un C
Posté par Cali_Mero . Évalué à 1.
Sa manière de coder est très old-school : ca marche, mais bon, il est loin du XHTML (les ' autour des attributs de balise, le innerHTML qui n'est pas DOM-Compliant, le style='width:299' sans l'unité...).
Ce que je conseillerais, dans ce cas, c'est simplement d'au lieu de créer/détruire du HTML avec innerHTML (beurk, gruik), il peut faire disparaitre et apparaitre à sa guise les éléments créés une bonne fois pour toutes dans la page à l'aide de la propriété "display" en CSS. les éléments du formulaire étant créés en meme temps que la page par le browser, et simplement cachés, il évitera à coup sûr ce problème et surement d'autres encore.
De plus, comme ca représente une moindre utilisation de javascript dans la page, ca augmente l'accessibilité et ca booste les perfs.
voici un bout de code à moi qui exploite ce genre de mécanismes pour afficher/masquer un div rempli de diverses choses créées via JS , il peut s'en inspirer pour son truc:
[script]
function showhidezediv(bouton) {
zediv=document.getElementById('zediv');
if(zediv.style.display && zediv.style.display=='block')
zediv.style.display='none';
else
zediv.style.display='block';
}
[/script]
Invite donc ton ami à visiter http://www.openweb.eu.org(...) pour lui faire découvrir en douceur la puissance des standards.
[^] # Re: Réconcilier, avec un C
Posté par Twidi (site web personnel) . Évalué à 1.
http://www.yoyodesign.org/doc/w3c/css2/visuren.html#propdef-display(...)
extrait :
cette valeur fait qu'aucune boîte n'est générée par l'élément dans la structure de formatage (c.à.d., cet élément n'a pas d'influence sur la mise en forme du document). Les éléments qui en descendent ne génèrent pas de boîtes non plus ; on ne peut plus modifier leur comportement avec la propriété 'display'.
donc une fois passé ton élément à display:none, et bien impossible de le repasser à block
c'est donc pour ça que moi aussi j'utilise du innerHTML car je n'ai pas trouvé comment remplacer, enfin avant de découvrir qu'on pouvait jouer avec les noeuds xml dans l'arbre XHTML (j'avoue m'y être essayé et c'est plutôt puissant !)
(ps : "visibility" ne convient pas plus que display car l'élément dans ce cas reste positionné dans le flux)
[^] # Re: Réconcilier, avec un C
Posté par Twidi (site web personnel) . Évalué à 1.
[^] # Re: Réconcilier, avec un C
Posté par Twidi (site web personnel) . Évalué à 2.
[^] # Re: Réconcilier, avec un C
Posté par Cali_Mero . Évalué à 4.
[p style="display:none"]
[img src="plop" style="display:block"]
[/p]
n'affichera absolument rien : la propriété display mise à "none" s'applique à toutes les balises enfants et ne peut être redéfinie plus loin dans la hiérarchie (ce qui est logique).
Cela ne concerne pas, comme tu l'as maintenant compris, les comportements dynamiques : on peut bien sûr changer la valeur de cette propriété via javascript pour masquer des objets dynamiquement.
# pas de gras ...
Posté par jusob . Évalué à 1.
*<strong>gras</strong> UNIQUEMENT si c'est pour indiquer quelque chose de TRES important (utiliser <em> pour ce qui est important, <strong> pour TRES important). Cela va etre rendu en grans dans les browsers. Pour etre surt de ça, on peut ajouter dans un fichier css: strong {font-weight: bold;}
* <span class="gras">gras</span> avec en CSS: .gras {font-weight: bold;}
Sinon, il devrait peut-être aller plus progressivbement est faire du HTML 4.01 Transitional (la balise b est peut-être toujours tolérée en transitionel, à vérifier).
Faut bien comprendre que le respect des standards simplifie également la vie du webmaster: il est beaucoup plus simple de changer la mise en mage de tout un site en modifiant un seul fichier .css que de changer toutes les pages 1 par 1. Tout le monde devrait être content: le webmaster car il aura moins de boulot une fois les techniques assimilées, et les utilisateurs qui auront un site lisible quelque soit leur navigateur et leur handicap.
# pour le JS
Posté par jusob . Évalué à 1.
Je lui conseillerai de valider d'abord sa page en HTML uniquement. Une fois la page validée, ajouter le JS, et ensuite débugger le JS. Ainsi, il élimine une source potentielle du problème (HTML incorrect).
Bon, la première chose à lui dire: on utilise les doubles quotes " à l'intérieur des balises HTML, pas le simple quote: <div id ="groupSondage">
Ce serait bien qu'il ajoute à la suite de son message le message d'erreur généré par Mozilla dans le console Javascript (ne pas oublié de vider le log).
[^] # Re: pour le JS
Posté par coucou747 . Évalué à -1.
J'avais eu un problème avec les noms d'images mais c'était pour porter de mozilla a ie.... ie ne suporte pas quelques noms de variables ou d'images ect... conseille lui de programmer sous linux (Konqueror ou mozilla) et de porter sous ie après c'est bcp plus simple...
dit lui aussi de toujours utiliser la même syntaxe pour deux choses identiques, ça lui permet de faire recherhcer/remlplacer si c'est faux... en ja on fait souvent des pages de plus de 700 lignes mais pour les porter, c'est vraiment dur ensuite si on ne respècte pas deux trois trucs de base : utiliser toujours des noms de variables et de fonctions longs car sous ie ça peut le déranger ect... on se retrouves rapidement perdu...
mozilla n'aime pas trop tout ce qui est div (sauf avec getbyid) et je n'ai jamais réussi a récupérer les touches du clavier avec mozilla, mais j'ai vu sur un forum javascript que c'était possible :
http://www.javascriptfr.com/code.aspx?ID=25203(...)
[^] # Re: pour le JS
Posté par coucou747 . Évalué à 0.
excusez moi, vous n'avez pas besoin d'un lecteur mp3....
bon voila la je penses que c'est la bonne source.
^^
# Epoz
Posté par _alex . Évalué à 1.
cf http://mjablonski.zope.de/Epoz(...)
Il est prévu pour être intégrer dans Zope, mais n'en dépends pas.
Suivre le flux des commentaires
Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.