11488 sujets

JavaScript, DOM et API Web HTML5

Bonjour a tous d'abord,je suis nouveau alors ca fait pas de mal de se présenter,jm'apelle md.carter et je suis un pti étudiant et donc euh voila pas plus lol.
Je cherche en fait le moyen de faire des pop-up mais que le tout reste valide xhtml
(page en question ici : work.karma-blog.net)
Merci d'avance a tous!
Soit tu fais du XHTML 1.0 Transitionnal , et tu peux définir un target="_blank" dans ton lien , c'qui ouvrira une nouvelle fenêtre ...

Sinon, si tu es en XHTML 1.0 Strict ou plus, tu dois passer par le javascript comme ca :

<a href="page.htm" onclick="window.open(this.href); return false;"></a>


sachant que le window.open accepte 3 argumets :
- URL (this.href)
- Nom (de ta fenêtre)
- Options, c'est à dire ce que tu laisses comme options dans la fenêtre (boutons, barres, etc)

EDIT : tu trouveras effectivement tout c'que t'as besoin sur http://www.openweb.eu.org/articles/popup/ comme l'as dis Eric
Modifié le 26 Oct 2004 - 21:56
merci a tous pour vos réponse,mais n'y a t'il aucune autre façons de faire? car on ne peut pas indiquer de taille pour la fenêtre avec cette technique Smiley decu
(désole pour le forum,je pensais que webdesign c'était bon lol)
edit : mea culpa,toutes les informations sont dans le tuto,merci a tous Smiley smile
Modifié le 26 Oct 2004 - 22:39
En XHTML transitionnel tu peux mettre un target='_blank'

En XHTML strict tu ne peux pas. Maintenant je n'ai jamais compris le but des astuces onclick="window.open(this.href)". Certes ça valide en strict mais en regardant un peu plus profondément sans le validateur :
est-ce que vous faites vraiment du strict ?

le onclick="window.open" c'est de la présentation. Le validateur ne le voit pas car il ne comprend pas le javascript mais vous n'avez plus une philosophie de stricte séparation. Quant à l'accessibilité ou la compatibilité, elles ne sont pas meilleures qu'avec un target, au contraire.

Soit vous faites du transitionnel (vouloir controler la présentation comme par exemple l'affichage des fenêtres) alors assumez le : mettez un doctype transitionnel et des attributs target au lieu de ces paliatifs javascript inutiles.
Si par contre vous voulez faire du strict .. .et bien vous vous fourvoyez totalement en voulant décider au milieu du code que tel ou tel lien doit s'afficher dans une nouvelle fenêtre : si vous le faites ce n'est plus un modèle strict
Bonjour à tous,

Il y a un article sur cybercodeur justement sur le sujet : http://www.cybercodeur.net/weblog/commentaires/detailsCarnet.php?idmessage=1088
particulièrement intéressant.

Je n'étais pas tout à fait convaincu, alors j'ai répondu au carnet en essayant de donner quelques points contraires. Malheureusement, mon argumentation était particulièrement mauvaise et j'ai été incohérent sur trois ou quatre point. Je suppose que je ne dors pas assez ces temps-ci. Mais bon... on m'a proposé de continuer la discussion ici et c'est ce que je fais. Je vous conseille donc de lire l'article si vous voulez connaître le contexte.

En fait la solution proposé dans l'article est très élégante et amène un maximum de séparation structure/présentation/comportement. Par contre, il y a quelques points qui me tracassaient :

1) Utiliser le DOCTYPE XHTML 1.0 Strict et la technique de remplacement du target="_blank" par onclick="équivalent de target blank en javascript" est philosophiquement incompatible. Ou pour reprendre un peu le dernier message de ce fil de discussion : Il faut s'assumer et ne pas utiliser le modèle strict.

2) Le javascript contient une version pour IE et une autre pour les fureteurs standards. Pour une partie du code du moins.

Pour l'instant je suis totalement en désaccord avec le premier point. Il faudrait me dire où dans le standard XHTML 1.0 Strict on nous oublige en tout temps d'effectuer une séparation parfaite comportement/structure/présentation. Ne faisons-nous pas déjà en partie cette séparation en utilisant l'attribut onclick plutôt que target ? L'idéal est effectivement de tout mettre le javascript dans un fichier séparé, mais cela n'est pas toujours possible (surtout lorsque, comme développeur, nous n'avons accès qu'à une partie du code ou devont respecter certaines contraintes d'architecture). Doit-on abandonner les nombreux avantages du XHTML Strict juste parce que on ajouté un maigre onclick. C'est ne pas comme si nous ajoutions un <nobr> quand ,même !!! Smiley smile

Ma compréhension du modèle strict est que celui-ci est un pas dans la bonne direction, mais qu'il est loin d'être parfait. Il faudra attendre le XHTML2, que fort probablement personne n'utilisera, pour atteindre ce but. (La façon de faire aura le temps de complètement changer d'ici là).

Je pense quand même qu'il est mieux d'utiliser un onclick à l'intérieur d'un modèle strict qu'un target="_blank" en transitionnel, car cela nous force à commencer à réfléchir à la séparation comportement/structure. Même s'il existe de meilleures solutions. Je ne suis pas encore capable de dire, ne faites jamais cela, c'est Mal (tm).

Nous pourrions comparer l'utilisation de l'attribut onclick à l'utilisation de l'attribut style, tous deux permis dans le XHTML Strict, mais pas idéal au niveau séparation structure/comportement/présentation. (de la même façon, je trouve que c'est mieux d'utiliser l'attribut style que les diverses balises comme <font>, mais bon...)

Pour le point 2),Je vais y réfléchir et je vous reviens la dessus. Si je ne vous reviens pas c'est que je n'ai pas trouvé d'argumentation potable.
En XHTML (quelque soit la version), rien n'empèche d'utiliser du JavaScripte de manière habituelle pour faire des pop-up... au contraire, "l'esprit" de la norme XHTML etant de séparer fond et forme, il est vivement conseiller d'utiliser le JS pour cela (plutot que l'attribut target qui sort d'une partie de la norme XHTML strict)

L'utilisation des normes du Web actuel pourrais ce resumer comme ceci : (attention, cela n'engage que moi, mais c'est comme ça que j'ai compris les choses jusqu'a présent !)

- HTML/XHTML : balisage sémantique des contenues.
- CSS : Mise en forme des contenues.
- ECMAScript/JavaScript : Application d'effet spéciaux sur la page.
Salut,

As-tu envisagé d'utiliser un attribut rel pour indiquer le statut de ton lien, avec un fichier JavaScript à côté (perso, je n'en mets plus dans la page) afin de modifier le target des liens comportant ce rel ?
Pour répondre au 2 :

Si tu met un bete onclick, tu changes de langages mais tu ne sépares rien. Ton contenu et ta présentation sont toujours liés. Si tu fais un quelconque changement, tu vas devoir te coltiner toutes les conséquences.
Quand je parle de séparation je ne parle pas de changer de langage/format, mais bien de séparer. Si c'est interdit en strict ce n'est pas pour vous inciter à utiliser un autre langage/format, ça n'aurait strictement aucun intérêt. C'est pour le cas où vous séparez vraiment les différentes couches.

Maintenant tu parles de "renoncer à tous les bénéfices du strict". C'est là que je suis mal compris. Coder en strict (je parle de la philosophie, pas de la validation technique) apporte des bénéfices. Par contre avoir un beau doctype marqué "strict" en haut n'apporte aucun avantage.
Si tu ne changes que le doctype en haut et que ton contenu continue à être fait en strict, tu ne renonces à aucun avantage. Toujours après avoir changé ton doctype, si tu rajoutes un target tu auras perdu un peu de ton avantage, parce que les mises à jour seront plus complexes, mais par rapport à un onclick="window.open..." tu n'auras rien perdu du tout. Dès lors ... pourquoi ne pas le faire ?