OVH Cloud OVH Cloud

Cadres dynamiques sans frame

14 réponses
Avatar
Xavier
Bonjour à tous,

Je cherche une solution pour le besoin suivant :
- sur la gauche de l'écran, une liste d'éléments avec liens vers le détails
de chaque élément
- sur la droite, le détails de l'élément cliqué dans la liste

J'ai actuellement une version avec frames. Je cherche une solution sans
frame :
- un scroll pour la liste de gauche
- mais sans recharger toute la page à chaque fois qu'on clique sur un
élément de la liste dont on veut voir le détails (qui entrainerait
d'ailleurs la perte de la position du scroll de gauche)

J'ai trouvé quelque chose de proche là :
http://www.alsacreations.com/articles/frames/frames2.php
Mais :
- le clic sur le lien à gauche recharge toute la page
- le détail à droite contient un scroll, ça me plait bien, mais c'est un DIV
avec positionnement en pixel, et ça, ça me plait moins (j'ai eu des
mauvaises expérience car différents navigateurs sous différents OS).

Merci pour vos idées, infos, liens, ...

Xavier

10 réponses

1 2
Avatar
CrazyCat
ASM wrote:
tu remplis le div avec un simple:
document.getElementById("detail").InnerHTML = infos[index];
(index est alors la ligne correspondant à l'élément).

Sinon, tu peux utiliser un fichier php que tu appelles en faisant
details.php?index=XX (XX est l'enregistrement de l'élément) et un
javascript qui ferait:
document.getElementById("detail").src = "./details.php?index="+index;




n'es-tu pas en train de mélanger 2 notions ?
- l'ecriture sur la page ( .innerHtml)
- le chargement dans un iframe ( .src)



Pas du tout, je donne deux voies d'exploration différentes, soit en
utilisant un système 100% interne soit en utilisant de l'externe.

Et j'ai découvert par hazard qu'il était possible de modifier la source
(.src) d'un div.


--
Humour: http://www.chatfou.com
Tchattez en liberté: http://www.c-p-f.net
Tout sur les eggdrops: http://www.c-p-f.org
Avatar
Tranquille
bonjour,

*Ecrits* *de* *CrazyCat*:
...
Et j'ai découvert par hazard qu'il était possible de modifier la source
(.src) d'un div.



et que peut-on mettre dans ce .src ?
merci d'avance.

--
Null n'est infaillible! (Vécu)
(ICQ: 342921409)
ATTENTION: Pour m'écrire, rajouter (pour tranquille) dans l'objet pour
passer le filtre antispam.
Avatar
CrazyCat
Tranquille wrote:
Et j'ai découvert par hazard qu'il était possible de modifier la source
(.src) d'un div.


et que peut-on mettre dans ce .src ?
merci d'avance.



une url ou une page locale...
Voir même une partie de page (il ne sert à rien de renvoyer les headers,
et il est dangereux de mettre les </html> et </body>)
En fait, tu peux utiliser cela comme un include php dynamique.


--
Humour: http://www.chatfou.com
Tchattez en liberté: http://www.c-p-f.net
Tout sur les eggdrops: http://www.c-p-f.org
Avatar
Tranquille
*Ecrits* *de* *CrazyCat*:
Tranquille wrote:
Et j'ai découvert par hazard qu'il était possible de modifier la source
(.src) d'un div.


et que peut-on mettre dans ce .src ?
merci d'avance.



une url ou une page locale...
Voir même une partie de page (il ne sert à rien de renvoyer les headers, et
il est dangereux de mettre les </html> et </body>)
En fait, tu peux utiliser cela comme un include php dynamique.



bon, j'ai fait un test, peut-être n'est-il pas bon:
j'ai un div sur une page html.
via un script je mets dans le .src=test.txt
ensuite je fais afficher via un alert le contenu de ce src qui est bien
correct.
mais dans le div en affichage je ne vois rien...
quelle est mon erreur?
merci de ton aide.

--
Prochain palier: Sortir du lot (proprement).
(ICQ: 342921409)
ATTENTION: Pour m'écrire, rajouter (pour tranquille) dans l'objet pour
passer le filtre antispam.
Avatar
ASM
Tranquille a ecrit :

quelle est mon erreur?



de ne pas utiliser IE ?
(car je ne vois que IE pour se permettre ça ...)

--
*******************************************************
Stéphane MORIAUX et son vieux Mac
Aide Pages Perso (images & couleurs, formulaire, CHP)
http://perso.wanadoo.fr/stephane.moriaux/internet/
*******************************************************
Avatar
Tranquille
*Ecrits* *de* *ASM*:
Tranquille a ecrit :

quelle est mon erreur?



de ne pas utiliser IE ?
(car je ne vois que IE pour se permettre ça ...)



ben non, même comportement avec ie6 et ff1...
aucune erreur dans la console javascript de ff1 (pour ie j'en sais rien
:-) )
si ça fonctionnait, ça serait top pour moi...
mais bon, c'est pas normalisé je pense, hein?
merci en tout cas

--
Prochain palier: Sortir du lot (proprement).
(ICQ: 342921409)
ATTENTION: Pour m'écrire, rajouter (pour tranquille) dans l'objet pour
passer le filtre antispam.
Avatar
CrazyCat
Tranquille wrote:
bon, j'ai fait un test, peut-être n'est-il pas bon:
j'ai un div sur une page html.
via un script je mets dans le .src=test.txt
ensuite je fais afficher via un alert le contenu de ce src qui est bien
correct.
mais dans le div en affichage je ne vois rien...
quelle est mon erreur?
merci de ton aide.



zut, comme je te l'ai dit, j'avais trouvé ça par hazard.
peut-être était-ce un div.location.href = "./fichier.html"


--
Humour: http://www.chatfou.com
Tchattez en liberté: http://www.c-p-f.net
Tout sur les eggdrops: http://www.c-p-f.org
Avatar
Olivier Miakinen
Le 06/01/2005 16:33, Patrick Mevzek a écrit :

Le moyen canonique et standard de modifier un document (X)HTML c'est
d'utiliser le DOM (Document Object Model) tel que défini par le W3C avec
des méthodes spécifiques pour ajouter/enlever/modifier les noeuds (Nodes)
qui sont dans le document.

Une bonne url d'introduction à cela en anglais:
http://www.quirksmode.org/dom/intro.html



Merci pour le lien.

Les tenanciers de ce newsgroup auront probablement des liens en français
à proposer.



Les tenanciers du groupe <news:fr.comp.lang.javascript>, plus adapté et
vers lequel je redirige la suite de ce fil, auraient pu proposer le lien
suivant : <http://fr.selfhtml.org/javascript/index.htm>.

--
Olivier Miakinen
Non, monsieur le juge, je vous le jure : jamais je n'ai cité
Bruxelles dans ma signature.
Avatar
Patrick Mevzek
Le Thu, 06 Jan 2005 16:04:01 +0100, Xavier a écrit :
Merci pour ta solution, mais ça ne peut pas convenir à mon besoin. Le
détails d'un élément doit être affiché dynamiquement, je veux dire par
là, cherché sur le serveur au moment de la demande, toute les données
sont dynamiques. Il me faut donc un chargement dynamique du détail.



Même dans ce cas, le contenu du div peut être calculé au moment où on
charge la page complète. Ok, si le contenu change sur le serveur après
l'affichage de la page, on ne verra pas la modification, mais il faut
voir si vous avez réellement besoin d'un rafraichissement à la seconde
près, car sinon cette solution est plus simple, plus performante
normalement (pas d'allers-retours systématiques) et elle n'empêche pas de
mettre un petit lien/bouton ``Rafraichir'' qui recharge la page (ok le
bouton refresh du navigateur quoi :-)), qui à ce moment là récupérera le
contenu à jour pour tous les div.

Je veux bien réécrire le document à la volée, mais le contenu doit venir
du serveur. J'ai trouvé une solution en mettant dans le "innerHTML" une
"iframe" avec comme source la requête au serveur. Une autre solution ?



Vous connaissez Google Suggest ?
(http://www.google.com/webhp?complete=1&hl=en)
La page se connecte en permanence à leurs serveurs en fonction de ce que
vous tapez pour mettre à jour le popup de suggestion.

Je ne vous encourage pas à regarder leur code javascript, c'est une
horreur (enfin la sortie d'un obfuscateur je pense), mais il y a
effectivement un iframe dont la source peut changer afin de récupérer des
nouvelles informations du serveur et après une copie (en gros, de ce que
j'en comprends) vers le div correspond au popup.

iframe semble être la seule solution, même si c'est laid (iframe étant
une extension MS).

La belle façon de faire serait de faire du RPC-XML/SOAP/REST à partir du javascript,
mais ca semble être plutôt l'avenir que le présent.
En tout cas c'est possible dans Mozilla :-)
Cf http://www.oreillynet.com/pub/a/javascript/synd/2002/08/30/mozillasoapapi.html

Je ne sais pas où en est le W3C & co à ce sujet.

"W3C avec la manipulation des Nodes" ? Je ne connais ni l'un ni l'autre,
je ne comprends donc pas. Peux-tu m'expliquer ?



Cf mon autre réponse à ce sujet.

--
Patrick Mevzek . . . . . . Dot and Co (Paris, France)
<http://www.dotandco.net/> <http://www.dotandco.com/>
Dépêches sur le nommage <news://news.dotandco.net/dotandco.info.news>
Avatar
Patrick Mevzek
Le Thu, 06 Jan 2005 16:39:16 +0100, Pierre Goiffon a écrit :
- XMLHttpRequest
http://jpspan.sourceforge.net/wiki/doku.php?id=javascript:xmlhttprequest

Les 3 étant des bidouillages vraiment très spécifiques.



Merci pour ces liens, le dernier permet notamment de déboucher sur
http://jpspan.sourceforge.net/wiki/doku.php?id=javascript:remotescripting
et dans le bloc ``Discussions'' on discute justement de toutes les façons
possibles de faire, donc ca donne plein de pistes :-)

--
Patrick Mevzek . . . . . . Dot and Co (Paris, France)
<http://www.dotandco.net/> <http://www.dotandco.com/>
Dépêches sur le nommage <news://news.dotandco.net/dotandco.info.news>
1 2