11548 sujets

JavaScript, DOM et API Web HTML5

Pages :
Bonjour à tous,
voila ca fait quelques semaines que je me suis mis au xhtml + css2 et tout et tout ! mais voila j'ai un problème de taille (enfin pour moi)
dans un div j'ai placé une iframe.
dans un autre div (c'est le menu) avec des liens, et je voudrais que lorsque je clic sur le lien une page précise ce charge dans l'iframe...
alors le problème c'est que je trouve effectivement le javascript pour contourné le target interdit mais il ne fonctionne dirait on que pour _blank.
J'aimerai lui préciser le nom de la cible (nom de mon iframe).
Merci par avance. Smiley biggrin
PS : alala mais s'on relou c gar du w3c de nous avoir viré c target (avis perso)
Smiley fache
Modifié par Merkel (23 Feb 2005 - 19:26)
C'est parce que tu utilises un DTD Strict.

L'attribut target est tout à fait valide en XHTML 1.0 Transitional.
Bien oui je suis d'accord avec toi mais le fait est que le transitionnal c pour la transition, pour qu'à terme il n'y ai plus que le strict de valide (enfin je pense que c'est le but du w3c).
donc si quelqu'un de calé en javascript pouvé me dire comment adapté le code pour que l'on puisse précisé un nom de iframe en cible ca seré super cool. Ca me permettré de conservé mon 1.1 strict
OULA calmos bonbon mentos (ok replik ringard)
excuse moi mon clavier à tapé plus vite que je n'ai eu le tps de réfléchir : XHTML 1.1 (only) XHTML 1.0 stict transitionnal frameset (c mieu ?)
bon alors effectivement ca peut paraitre idiot comme démarche mais je suis étudiant et l'école affectionne que notre code soit valide suivant ce que l'on étudie au moment présent :: en l'occurence XHTML1.1 strict...ement et rien d'autre (LOL, t'as cru que je recommencais hein...)
voila le pourquoi de ma recherche Smiley rolleyes
Le mieux serait que tu colles ton script ici.
N'oublies pas d'utiliser le BBCode [ code][/code ] (sans les espaces).

Peut-être ton sujet trouvera-t-il preneur...

Bonne chance Smiley cligne
Si le but est d'apprendre à utiliser du XHTML 1.0 Strict ou du XTML 1.1 alors la logique voudrait que tu utilise et respecte les spécificités de ces languages. Si c'est pour faire du XHTML 1.1 comme du HTML en utilisant en plus des fonctions déssuètes et non recommandées en les masquant par des bidouilles en javascript c'est totalement inutile, illogique, bref une perte de temps et d'energie.

Donc voilà, tu choisi un doctype adapté à ton projet actuel et tu en accepte les spécificités ou alors tu choisi XHTML 1.1 pour te faire plaisir et tu reprend à 0 mais proprement.

A priori ton professeur preferera un travail propre avec un doctype adapté plutôt qu'une bidouille visant à masquer (au validateur) le fait que tu ne ne respecte pas le standard choisi (dans le cas contraire tu devrais peut être penser à changer d'école).


PS: Si tu pouvais faire un effort sur l'écriture : eviter les mots abrégés style SMS ça serait pas de refus.
Modifié par jb_gfx (24 Feb 2005 - 00:27)
Bon je suis repassé en 1.0 transitionnal et je ne considérais pas polluer mon code, il est propre seulement je pense que le target fait encore polémique et puis au nom de l'interopérabilité on supprime du code qui servait justement la rapidité dans certaines configuration (bien sur pas tout ce qui concerne la pub et autres popup...) mais c'est idiot, à un moment donnée il faudrait aussi que les appareils visés se dote du bagage pour interprété un peu plus que 2 ou 3 balises. Bon c'est pas la question. Moi ce que je vois c'est qu'à terme et personne ne viendra me dire le contraire, le standard sera strict et trés peu permissif alors si ce standard nous limite dans nos choix de réalisation alors mince je vais commencer à regretter mon parti pris. C'est pour ca que chercher des solutions alternatives ne me paraissent pas être de la bidouille mais seulement de l'adaptation au milieu évoluant.
Le pb n'est plus je vous remercie tout de même.
PS : au niveau de la rédaction des messages...hé jb_gfx...toi le strict t'y es passé avant même que ca n'existe...lol oups lots of laughting Smiley cligne
bref rester cool quand même parce que j'imagine qu'à la sortie du xhtml2 on va devoir converser en langage soutenu sur le forum...(bon jsuis moqueur)
Merci de votre intéret
Modérateur
Juste une question spidermanu, pourrais-tu nous expliquer pourquoi tu veux utiliser un iframe ? Quelle est ta principale motivation ?

spidermanu a écrit :

Moi ce que je vois c'est qu'à terme et personne ne viendra me dire le contraire, le standard sera strict et trés peu permissif


En effet, le "standard" est moins permissif. Il empêche aux codeurs de faire trop de conneries. Smiley cligne Ceci dit, rien ne t'empêche de continuer avec le bon vieux HTML de papa et utiliser autant de balises que tu veux. La première motivation pour passer en (x)html (du moins, passer au respect de sa syntaxe et de ses balises) ne doit pas être pour suivre la mode. Tu dois avoir de bonnes raisons et le x(html) strict apporte des avantages que tu ne semble pas encore connaître. Donc, rien ne t'empêche de bourrer ton site de frames et de Javascript à gogo, ca ne va pas détruire le web ou incendier des villages. Tu es encore libre de tes choix, et si tu considère en toute bonne foi que les standards c'est idiot, laisse-les tomber ou remet en question ta manière de conception de tes sites. Lis davantage de documentation sur les avantages d'une conception aux normes en respectant un standard, quel qu'il soit.

Pourquoi pas un petit rafraichissement : http://openweb.eu.org/articles/pourquoi_standards/

Sur ce, bonne soirée ! Smiley smile
Modifié par Merkel (24 Feb 2005 - 02:39)
Au contraire les standards sont trés larges, à toi simplement de choisir l'outil qui correspond le mieux à l'application que tu compte réaliser.

Si tu souhaites utiliser des target et des frames alors XHTML 1.0 STRICT ou 1.1 ne sont pas adaptés à ta situation. Il te reste un large choix possible entre HTML 3.02, HTML 4.01, XHTML 1.0 Transitional voir XHTML Frameset.

Un doctype ce n'est pas une application Windows, tu n'as pas à utiliser la dernière version parceque c'est "mieux".

Quand on fait le choix d'utiliser un standard c'est justement pour s'y tenir. Absolument rien ne t'oblige à suivre ce type de developpement et si tu souhaite être totalement libre dans tes choix de conception tu peux trés bien ne pas utiliser de doctype. Mais si tu choisi de faire du XHTML 1.1 et que tu dois bidouiller pour que ton code passe la validation car tu utilise des outils provenant d'un autre standard, alors tu t'es trompé dans ton choix.

Une petite lecture pour toi : choix raisonne de doctype et nouvelle fenetre
Bien bien on dirait que je m'attire les foudres !
Bon jsuis pas fou si je passe au xhtml c'est bien sur pour cette raison citée sur le site que vous m'avez filé :
"tous les documents conformes aux normes de XHTML seront dès lors compatibles avec XML, ce qui garantit leur pérennité."
maintenant si le problème c'est le javascript...bon en effet c'est un problème au niveau de l'interopérabilité et surtout sur la portabilité (pda gsm comprennent pas...)
Alors ok ok vous m'avez convaincu...voila je l'admet il faut que je radicalise ma vision des choses. l'iframe me permettait de changer le contenu d'un div via un lien mais je vais la virer et au lieu d'avoir 4 pages de contenu brut à charger j'aurais 4 fois la meme page mis en forme avec 4 contenu différents.
Sans target. J'étais (il ya de ca quelques années) partisan du moins il faut recharger de page visuellement mieux c'est. Alors les frames et iframe fusaient. Mais je ne peux nier que je suis un fana de gadget (j'ai moi même un Tungsten C et phone 3G) et si le futur ce sont eux alors faut que je m'adapte.
Merci de ces conseils les gars. Smiley biggrin
Modérateur
Content de l'entendre. Smiley smile

Si jamais tu ne connaissais pas, tu peux aussi faire une zone scrollable semblable que ton iframe avec CSS. Si jamais ca t'intéresse, gesticule un peu. Smiley biggrin

Et niveau rapidité de chargement, l'utilisation d'un iframe ne va rien améliorer. Finalement, il n'y a aucun avantage, je trouve, à utiliser un iframe dans ce contexte. Smiley smile
Bon ca va ca va ok c'est bon j'oubli les iframe pas la peine...raaa
Smiley cligne
ouai je vais utiliser l overflow : scroll
sinon vous dormez jamais sur alsa je poste à 0h30 et vous répondez à 2h30...
Enfin jme plains pas y'a de la disponibilité ici c'est cool!
allez merci à tous Smiley cligne
spidermanu a écrit :

sinon vous dormez jamais sur alsa je poste à 0h30 et vous répondez à 2h30...

Ben c'est que par chez nous, il est 18h30 et 20h30 alors...
spidermanu a écrit :

ps : version modifié de mon kit (xhtml1.1 plus de javascript plus de iframe)
hein hein voyez que je pouvais lacher les frames.


Il ne te reste plus, comme dit ci-dessus, qu'à lâcher XHTML1.1, ou à l'utiliser correctement. En l'état, en effet:
- ton document a beau porter une étiquette XHTML1.1 (la DTD), ce n'est pas du XHTML1.1 pour les navigateurs. Ce n'est pas du XHTML, en fait : le type de contenu text/html en fait du HTML, ou plutôt de la soupe HTML: XHTML1.1 n'est pas prévu pour être interprété en tant que HTML. (En revanche, XHTML1.0 est justement prévu pour cela).
- ton document n'a pas d'indication d'espace de nom (attribut xmlns de l'élément html) ni d'indication de langue de traitement. Cette dernière donne un bon exemple de la "soupe" ci-dessus:
* si tu ajoute xml:lang="fr" à l'élément html, ton document étant traité comme du HTML et n'étant pas du XHTML1.0, cet attribut est invalide du point de vue HTML.
* si tu ajoute lang="fr", cet attribut est invalide en XHTML1.1...
- ton document n'a pas de charset, malgré la <meta http-equiv...> : en effet, celle-ci sera certes reconnue lorsque le document est traité comme du HTML, mais elle sera ignorée si on force le navigateur à le traiter selon la norme XHTML1.1, c'est à dire en tant qu'application/xhtml+xml. Dans ce cas, comme l'encodage n'est pas spécifié ni au niveau serveur (entête HTTP) ni par un prologue XML, Opera et Firefox tombent immédiatement d'accord: "Encoding from serveur: unknown".
- En l'absence de prologue XML et d'encodage indiqué au niveau serveur, un document XHTML1.1 en iso-8859-1 est invalide (iso-8859-1 ne fait pas partie des encodages par défaut admis dans ce cas).

Donc, un choix à faire:
- revenir à XHTML1.0, qui peut, lui, être traité en tant que text/html
- corriger les différentes erreurs ci-dessus (encodage, prologue, langue, espace de nom...) et délivrer le document en tant que XHTML1.1 correct, c'est à dire avec le type de contenu application/xhtml+xml. Comme très peu d'agents utilisateurs reconnaissent actuellement ce type de contenu, et notamment pas IE, il te faudra faire de la négociation de contenu pour délivrer une version modifiée de ton document aux navigateurs qui n'acceptent que du text/html. Cette version peut être en XHTML1.0, en HTML4.01...

Donc, faire une seule version XHTML1.0 propre, ou gérer deux versions du document dont une en XHTML1.0 ? En sachant qu'XHTML1.1 t'est inutile, puisque tu n'exploite aucune des gains de celui-ci par rapport à XHTML1.0...

Sinon, il faut rappeler qu'un div scrollable CSS pose un problème d'accessibilité, car les utilisateurs n'ayant pas accès à un dispositif de pointage (souris...) ne peuvent pas faire défiler le contenu. Ils doivent désactiver la feuille de style pour rendre le document accessible. Il est dommage que les feuilles de style, dont un des rôles est d'améliorer l'accessibilité, joue ici le rôle inverse...
Modifié par Laurent Denis (25 Feb 2005 - 08:05)
Pages :