(html) Quand on sait pas....

tabliertablier Membre
10:31 modifié dans Actualités #1
et qu'on ne trouve rien dans les tutoriaux, on demande!!
En html, comment fait-on pour changer le contenu de 2 fenêtres différentes avec un clic sur un seul lien?
En fait j'ai des frames,
&lt;FRAMESET ROWS=&quot;120,*&quot; border=1 SCROLLING=&quot;no&quot;&gt;<br />	&lt;FRAME SRC= &quot;Bandeau.html&quot; &gt;<br />	&lt;FRAMESET COLS=&quot;150,*&quot; border=1 &gt;<br />		&lt;FRAME NAME=&quot;fenetreU&quot; SRC=&quot;U_rien/pages.html&quot;&gt;<br />		&lt;FRAME NAME=&quot;fenetreA&quot; SRC=&quot;Accueil.html&quot;&gt;<br />	&lt;/FRAMESET&gt;<br />&lt;/FRAMESET&gt;<br />

je veux changer les contenus de "fenetreU" et "fenetreA" avec un seul clic!
En utilisant target=..., changer l'un ou l'autre des contenus ne pose pas de problème. Mais les deux simultanément?  :(

A vot' bon coe“ur, msieur dames.

Réponses

  • AliGatorAliGator Membre, Modérateur
    10:31 modifié #2
    Hello,

    Ce n'est pas possible en HTML brut.
    Il faut introduire un peu de Javascript qui va modifier l'une et l'autre de tes frames (enfin leur paramètre SRC).
    Ou alors recharger toute la page (si elle ne contient que ton FrameSet c'est pas un drame), et passer les pages que tu veux afficher dans chacune des frames en paramètre de ton URL (mais c'est pas forcément plus propre/joli, moi je préfère la solution javascript)

    Pour la solution en JS, il te faut :
    • Associer des ID à  tes frames pour y accéder par script (on pourrait utiliser le nom NAME que tu as déjà  mis, mais on préfère les IDs car ils sont par définition forcément uniques alors que les noms par forcément). Disons que tu utilises les mêmes IDs que les noms fenetreU et fenetreA que tu as mis.
    • Modifier le SRC des frames par code, du genre :
    &lt;script language=&quot;javascript&quot; type=&quot;text/javascript&quot;&gt;<br />function chargerPages(url_U, url_A)<br />{<br />&nbsp; document.getElementById(&quot;fenetreU&quot;).src = url_U;<br />&nbsp; document.getElementById(&quot;fenetreA&quot;).src = url_A;<br />}<br />&lt;/script&gt;
    
    • Dans tes liens, au lieu de faire pointer vers une URL, tu fais pointer vers le code de la fonction javascript, pour qu'elle soit appellée (ce qui peut être fait soit en mettant [tt]javascript:changerPages('sommaire.html' , 'contenu.html');[/tt] dans l'attribut "href" de ton tag <a> à  la place de l'URL, soit (moins adapté dans ton cas je pense) en mettant une URL vide (ou "#") et mettant l'appel [tt]changerPages('sommaire.html','contenu.html')[/tt] dans le handler "onclick" de l'objet (image, DIV, ...) qui doit générer le changement de page.


    Voilà , j'ai pas vérifié mais ça devrait le faire.
  • tabliertablier Membre
    10:31 modifié #3
    Merci Aligator.  :P
    Me doutant qu'en html pure ce n'était pas possible, je me suis lancé dans jvs. Malgré 2 heure 1/2 de lecture d'un tutorial j'étais encore très loin de ce que tu m'indique! J'ai quand même découvert que jvs est très proche de C et C++ pour l'écriture et j'ai trouvé quelques exemples interessants.
    Bon, je vais essayer d'appliquer ta solution et merci encore.
Connectez-vous ou Inscrivez-vous pour répondre.