Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
858 connectés 

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [javascript] dernier lien cliqué

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[javascript] dernier lien cliqué

n°1508414
xphanoo
Posté le 29-01-2007 à 21:43:43  profilanswer
 

:hello:  
 
mon site contient deux frames, l'une qui est le menu l'autre le contenu, et j'aimerais que quand on clique sur un des éléments du menu que le dernier lien cliqué se démarque des autres (en s'affichant d'une autre couleur, par exemple). j'ai testé les "link: active", "link: visited" etc... mais j'en trouve pas un qui a la fonction que je recherche...


Message édité par xphanoo le 12-02-2007 à 18:16:43
mood
Publicité
Posté le 29-01-2007 à 21:43:43  profilanswer
 

n°1508424
xtof_83
Freeride Spirit
Posté le 29-01-2007 à 22:19:00  profilanswer
 

Ce que tu veux c'est afficher l'endroit ou tu es.
 
Tu peux pas faire ça en HTML direct.
 
Donc faut 2-3 truc en langage serveur.
 
Sinon, enlève les frames, ça se fait plus depuis les années 20.

n°1508426
dwogsi
Défaillance cérébrale...
Posté le 29-01-2007 à 22:39:05  profilanswer
 

Ouai enfin il me semble que ça reste faisable en js. Et dans la mesure où c'est un effet purement esthétique, donc pas du tout indispensable, ça me parait plus judicieux parce que plus simple.
 
Sauf dans le cas où il supprimerais ses frames et à ce moment là oui faire ça côté serveur.

n°1508430
xtof_83
Freeride Spirit
Posté le 29-01-2007 à 22:45:45  profilanswer
 

C'est sur, qu'il est plus à ça près ;)

n°1508442
dwogsi
Défaillance cérébrale...
Posté le 29-01-2007 à 23:48:33  profilanswer
 

Ya un peu de ça aussi oui  :D

n°1508449
zecrazytux
Posté le 30-01-2007 à 00:43:34  profilanswer
 

en javascript ça se fait bien :D


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
n°1509214
xphanoo
Posté le 31-01-2007 à 16:18:36  profilanswer
 

les frames c'est bien, ça permet de mieux structurer le site !
merci je vais chercher coté javascript  ;)

n°1509220
rufo
Pas me confondre avec Lycos!
Posté le 31-01-2007 à 16:31:54  profilanswer
 

xphanoo a écrit :

les frames c'est bien, ça permet de mieux structurer le site !
merci je vais chercher coté javascript  ;)


 
Mais bien sûr! Et la marmotte, elle met le chocolat dans le papier d'allu :sarcastic:  
Et les <div>, ça pas fait pour ça, justement???

n°1509249
clem85
http://www.luttiau.info
Posté le 31-01-2007 à 17:46:24  profilanswer
 

+1 pour les div's :p

n°1509256
xphanoo
Posté le 31-01-2007 à 18:06:02  profilanswer
 

bah pour faire une bordure fixe au site, avec le contenu qu'on fait défiler avec une scrollbar dans la page tu peux pas le faire avec un div  :o
enfin ce que j'utilise c'est un IFRAME

Message cité 1 fois
Message édité par xphanoo le 31-01-2007 à 18:07:00
mood
Publicité
Posté le 31-01-2007 à 18:06:02  profilanswer
 

n°1509257
rufo
Pas me confondre avec Lycos!
Posté le 31-01-2007 à 18:11:37  profilanswer
 

xphanoo a écrit :

bah pour faire une bordure fixe au site, avec le contenu qu'on fait défiler avec une scrollbar dans la page tu peux pas le faire avec un div  :o
enfin ce que j'utilise c'est un IFRAME


 
en css,  overflow: scroll; ça te dit qq chose?  :pfff:
 
Si on te dit de laisser tomber les frames ou iframes et d'utilsier les div, c'est pas pour t'embêter, c'est pour ton bien ;)


Message édité par rufo le 31-01-2007 à 18:12:40
n°1509261
xphanoo
Posté le 31-01-2007 à 18:15:52  profilanswer
 

lol c'est bon hein je savais pas  :o  
pourquoi vous aimez pas les frames ? bientot ça sera plus supporté par les nouvelles normes du html?

n°1509265
omega2
Posté le 31-01-2007 à 18:27:24  profilanswer
 

demande à google de passer sur ton site pour le référencer et demande ensuite dans google (une fois qu'il est passé) de te sortir la page qui contient une partie du texte de ton site. Tu véras alors que google t'envéras directement sur la fameuse page et que tu n'auras donc pas droit au menu du site.
Pour un visiteur, les frames l'empéche de mettre en favoris une page en particulier où d'envoyer un lien vers la dite page à une tierce personne.
 
Rien qu'avec ces deux exemples, je pense que tu comprends le probléme des frames.

n°1509273
rufo
Pas me confondre avec Lycos!
Posté le 31-01-2007 à 18:42:07  profilanswer
 

et pour répondre à ta question, oui, en XHTML 1.0 strict, les frames sont considérées comme des "erreurs"...Bref, c'est pas valide pour le validateur du w3c.


Message édité par rufo le 31-01-2007 à 18:42:30
n°1509284
omega2
Posté le 31-01-2007 à 19:16:14  profilanswer
 

rufo > Même chose en html 4.0 strict de mémoire, les frames n'ont été autorisé que dans les versions "frameset" des normes du W3C.

n°1509351
zecrazytux
Posté le 31-01-2007 à 22:02:46  profilanswer
 

ça pue les frames -_- ça devrait même pas exister


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
n°1509454
omega2
Posté le 01-02-2007 à 10:14:40  profilanswer
 

zecrazytux > Avant l'arrivé de langages comme le php ou l'asp, il était quasiment impossible de faire un menu sans frame à moins de le recopier partout à la main. En fait, à l'époque, les deux seules méthodes qui permettait de faire ça étaient la création de CGI (donc langage C, C++, ... et dans le meilleur des cas PERL) qui n'étaient accepté que par des hébergeurs trés cher ou l'utilisation d'un programme qui modifiait toutes les pages d'un dossier afin d'y rajouter le menu (aucun programme de ce genre n'étant conus par le grand public, ca revenait à se le créer soit même)
A une époque où cette balise a été créé, elle répondait à un trés grand besoin du net. Maintenant c'est sur que son utilité à fortement baissé grace à l'arrivé de langages serveur trés répendus chez ces derniers.

n°1511149
xphanoo
Posté le 05-02-2007 à 21:28:32  profilanswer
 

par contre j'ai un autre souci, une fois que j'ai mis le div comment faire varier le contenu a l'intérieur quand on clique les liens ? car au départ j'avais utilisé les frames dans le but de ne pas devoir recharger toute la page (menu+contenu) a chaque clic sur un lien...
je suis obligé de passer par du javascript ou du php ?

n°1511158
xtof_83
Freeride Spirit
Posté le 05-02-2007 à 22:07:47  profilanswer
 

non, enfin, tu vois, on part du principe que si un site est bien coder, le recharger en entier, ça se fait en 2 sec.
 
Pour cela, utilise bien, le HTML, sépare le CSS.
 
Si tu as un serveur, ou tu peux utiliser un langage comme php, ou asp, ....
 
Ben tu fais des inclusions.
 
Tu sépares le HTML redondant, dans 1 fichier, que tu appelles.
 
Si tu as pas ça. Le mieux:  code sous Dreamweaver, ou autre, et fait un systéme de template, qui à la fin te pond l' HTML, sans que tu fais 10.000 copier coller.
 
Bon le mieux est un langage serveur, avoir des connaissances de son utilisation après c'est secondaire, car toi, tu utiliseras au bas mot , un ligne de code...

n°1511266
zecrazytux
Posté le 06-02-2007 à 10:30:35  profilanswer
 

xtof_83 a écrit :

non, enfin, tu vois, on part du principe que si un site est bien coder, le recharger en entier, ça se fait en 2 sec.
 
Pour cela, utilise bien, le HTML, sépare le CSS.
 
Si tu as un serveur, ou tu peux utiliser un langage comme php, ou asp, .... ou python, ruby...
 
Ben tu fais des inclusions.
 
Tu sépares le HTML redondant, dans 1 fichier, que tu appelles.
 
Si tu as pas ça. Le mieux:  code sous Dreamweaver, ou autre, et fait un systéme de template, qui à la fin te pond l' HTML, sans que tu fais 10.000 copier coller.
 
Bon le mieux est un langage serveur, avoir des connaissances de son utilisation après c'est secondaire, car toi, tu utiliseras au bas mot , un ligne de code...


 
 
le mieux c'est:  
 
- "template" avec la mise en page de ton site: html + css, en deux fichiers (un fichier .css séparé)
- language coé serveur comme le php
 
tu utilise un moteur de template dans ce language, qui permet de placer du texte, des valeurs, du contenu quoi, au beau milieu de ta mise en page
 
ce qui permet de séparer le contenu du contenant
 
sans language serveur, tu fais une page bien mise en page etc, mais sans contenu. tu la prend ensute comme modele pour la remplir pour faqire chaque page de ton site (le principe des templates dreamweaver mais faut être fan de ce logiciel, moi perso je fais mes pages web sous vim et le systeme des templates, je l'utilise pareil, c'est rien que du copier coller :D)


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
n°1511268
zecrazytux
Posté le 06-02-2007 à 10:32:32  profilanswer
 

omega2 a écrit :

zecrazytux > Avant l'arrivé de langages comme le php ou l'asp, il était quasiment impossible de faire un menu sans frame à moins de le recopier partout à la main. En fait, à l'époque, les deux seules méthodes qui permettait de faire ça étaient la création de CGI (donc langage C, C++, ... et dans le meilleur des cas PERL) qui n'étaient accepté que par des hébergeurs trés cher ou l'utilisation d'un programme qui modifiait toutes les pages d'un dossier afin d'y rajouter le menu (aucun programme de ce genre n'étant conus par le grand public, ca revenait à se le créer soit même)
A une époque où cette balise a été créé, elle répondait à un trés grand besoin du net. Maintenant c'est sur que son utilité à fortement baissé grace à l'arrivé de langages serveur trés répendus chez ces derniers.


 
 
oui, je plussoie en effet. j'aurai du dire "ça devrait même plus exister :D


---------------
Blog photo/récits activités en montagne http://planetcaravan.net
n°1513782
xphanoo
Posté le 12-02-2007 à 18:14:38  profilanswer
 

re
 
alors j'ai trouvé mon bonheur en javascript, on choisit 2 couleurs (lien normal et dernier lien cliqué):
 

Code :
  1. function changeColor(myElement){
  2. var links = document.getElementsByTagName('a');//On créé un tableau comprenant tous les liens de la page.
  3. for(var i=0;i<links.length;i++)
  4.  links[i].style.color = '#EEE'; //On donne la couleur 002B9E à tous les liens de la page.  
  5. myElement.style.color ='#E00'; //On donne la couleur FF0000 au lien venant d'être cliqué.
  6. }


 
ensuite dans mes liens je rajoute: onClick="changeColor(this);" et ça marche
 
 
sauf qu'il y a un petit problème: du coup le changement de couleur link:hover du css (quand on survole le lien) ne fonctionne plus ! on dirait que le script rafraichit en permanence la couleur des liens donc le css n'a plus de controle sur la couleur des liens... y-a-t il un moyen pour régler ce problème?

n°1516103
xphanoo
Posté le 18-02-2007 à 11:29:27  profilanswer
 

j'ai changé de design de site (j'en ai téléchagé un tout fait que j'ai bien modifié), toujours avec un IFRAME mais j'ai trouvé de quoi supprimer presque tous les défauts des frames:
 

  • les balises <noframes></noframes>, vous mettez dedans les liens menant vers toutes vos autres pages, comme si c'était le menu de votre site, comme ça le robot de référencement tiendra compte de tous vos liens comme s'il s'agissait d'un site "normal" :)


  • un petit code a insérer a la fin de toutes vos pages qui seront affichées dans l'iframe:


<SCRIPT Language="javascript">
if (parent.frames.length==0) parent.location.href="index.htm"
</SCRIPT>
 
ça va éviter que des visiteurs tombent sur une page sans menu quand ils voient votre site sur google ou autre, il recharge la frame principale si il ne la détecte pas  :)

n°1516272
dwogsi
Défaillance cérébrale...
Posté le 18-02-2007 à 22:45:26  profilanswer
 

xphanoo a écrit :

<SCRIPT Language="javascript">
if (parent.frames.length==0) parent.location.href="index.htm"
</SCRIPT>
 
ça va éviter que des visiteurs tombent sur une page sans menu quand ils voient votre site sur google ou autre, il recharge la frame principale si il ne la détecte pas  :)


Oui sauf que c'est complètement con :non:
 
Parce qu'un visiteurs qui arrive sur une page de ton site depuis un moteur de recherche veut normalement voir cette page et pas une autre. Or avec ton super code js, il retourne systématiquement sur l'index qui charge les frames. Ça soulève encore une fois le problème des frames qui vont entraîner le chargement des pages par défaut et non pas de la page que la personne voulait voir.
 
Il serait donc plus judicieux de préciser ta redirection avec par exemple le code suivant :
 

Code :
  1. <script type="text/javascript">
  2. if (parent.frames.length==0) parent.location.href="index.htm?from=laPageActuelle"
  3. </script>


 
Ta page "principale" recevrait donc en paramètre l'identifiant de la page que la personne était venu voir initialement. Il est donc possible ensuite de changer dynamiquement la page chargée dans la frame en fonction de ce paramètre. Avec du côté serveur style php ou alors avec du côté client comme js.
 
Je vois une seconde solution en php qui consisterait à exploiter le référant pour y trouver quelle page la personne était venu voir.


---------------
-- Debian -- Le système d'exploitation universel | Le gras c'est la vie! | /(bb|[^b]{2})/
mood
Publicité
Posté le   profilanswer
 


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  HTML/CSS

  [javascript] dernier lien cliqué

 

Sujets relatifs
Programmation navigateur Web : Java/Javascript?[HTML/CSS/JavaScript]Projet interface site web 3d inspiré de XGl
|flash] mediaplayback +lien distantRécupérer le résultat d'une fonction javascript dans variable php
[javascript] désactiver une liste déroulante en cochant 1 bouton radio[Javascript/HTML] balise <object> et javascipt
dernier changement dans une base[Html,css,javascript] Gallerie Lightbox
Variable avec Javascript divun bouton.. deux actions !... sans javascript !
Plus de sujets relatifs à : [javascript] dernier lien cliqué


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR