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

  FORUM HardWare.fr
  Programmation
  HTML/CSS

  Ouvrir des fenêtres sous plusieurs liens

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

Ouvrir des fenêtres sous plusieurs liens

n°1450302
cmoimagou
Posté le 30-09-2006 à 22:58:18  profilanswer
 

Bonsoir,
 
J'ai un code en javascript qui ouvre une fenetre :
 
<script type="text/javascript">
function fenetre()
{
dimensions="width=300,height=300,top=50,left=100,screenY=50, screenX=100, resizable=no";
window.open("http://www.domaine.com/infos.php?couleur=????????","Couleur","dimensions,scrollbars=yes,location=yes" );
}
</script>
 
Je voudrais par exemple m'en servir pour avoir des infos sur différentes couleurs :
<a href="javascript:fenetre();">Bleu</a>
<a href="javascript:fenetre();">Rouge</a>
<a href="javascript:fenetre();">Vert</a>
 
Mon souhait serait que l'url de destination du script change en fonction de la couleur choisit, que se soit par exemple :
http://www.domaine.com/infos.php?couleur=bleu pour la couleur bleu
http://www.domaine.com/infos.php?couleur=rouge pour la couleur rouge
http://www.domaine.com/infos.php?couleur=vert pour la couleur verte
 
Je ne suis pas un as en javascript donc si quelqu'un pourrait me donner un coup de main!! Merci.

mood
Publicité
Posté le 30-09-2006 à 22:58:18  profilanswer
 

n°1450321
dwogsi
Défaillance cérébrale...
Posté le 01-10-2006 à 00:22:02  profilanswer
 

Déclaration de la fonction en js :

Code :
  1. function fenetre(couleur)
  2. {
  3. dimensions="width=300,height=300,top=50,left=100,screenY=50, screenX=100, resizable=no";
  4. window.open("http://www.domaine.com/infos.php?couleur="+couleur,"Couleur","dimensions,scrollbars=yes,location=yes"
  5. return false;
  6. );
  7. }


 
et ton code html :

Code :
  1. <a href="http://www.domaine.com/infos.php?couleur=bleu" onclick="return fenetre('bleu')">Bleu</a>


 
Et pas de js dans le href svp!

n°1450345
gatsu35
Blablaté par Harko
Posté le 01-10-2006 à 08:41:07  profilanswer
 

dwogsi a écrit :

Déclaration de la fonction en js :

Code :
  1. function fenetre(href)
  2. {
  3. dimensions="width=300,height=300,top=50,left=100,screenY=50, screenX=100, resizable=no";
  4. window.open(href,"dimensions,scrollbars=yes,location=yes" );
  5. return false;
  6. );
  7. }


 

Code :
  1. <a href="http://www.domaine.com/infos.php?couleur=bleu" onclick="return fenetre(this.href)">Bleu</a>




 
Autant eviter de creer un href et utiliser celui correspondant au lien

n°1450400
dwogsi
Défaillance cérébrale...
Posté le 01-10-2006 à 14:36:59  profilanswer
 

Oui c'est vrai c'est encore plus simple.
 
Edit :
Ya même une erreur dans la fonction!

Code :
  1. function fenetre(href)
  2. {
  3. dimensions="width=300,height=300,top=50,left=100,screenY=50, screenX=100, resizable=no";
  4. window.open(href,dimensions+", scrollbars=yes,location=yes" );
  5. return false;
  6. );
  7. }

Message cité 1 fois
Message édité par dwogsi le 01-10-2006 à 14:47:30
n°1450408
gatsu35
Blablaté par Harko
Posté le 01-10-2006 à 15:05:49  profilanswer
 

dwogsi a écrit :

Oui c'est vrai c'est encore plus simple.
 
Edit :
Ya même une erreur dans la fonction!

Code :
  1. function fenetre(href)
  2. {
  3. var dimensions="width=300,height=300,top=50,left=100,screenY=50, screenX=100, resizable=no";
  4.     window.open(href,dimensions+", scrollbars=yes,location=yes" );
  5. }
  6. <a href="http://www.domaine.com/infos.php?couleur=bleu" onclick="return fenetre(this.href);return false">Bleu</a>



Voila corrigé :o
le return false doit être dans le onclick, pas dans la fonction qui appelle le onclick.

n°1450412
dwogsi
Défaillance cérébrale...
Posté le 01-10-2006 à 15:14:44  profilanswer
 

Franchement j'aime pas mettre le return false dans le onclick directement.
J'admet volontier qu'un return false dans la fonction n'est pas logique, mais tellement plus lisible.

n°1450416
gatsu35
Blablaté par Harko
Posté le 01-10-2006 à 15:38:33  profilanswer
 

dwogsi a écrit :

Franchement j'aime pas mettre le return false dans le onclick directement.
J'admet volontier qu'un return false dans la fonction n'est pas logique, mais tellement plus lisible.


 
 
 

Code :
  1. function truc() {
  2.   return false;
  3. }
  4. <a href="#" onclick="truc();">dfdf</a>


Dans ce code, truc retourne false; mais en principe c'est onclick qui doit retourner false; mais là onclick il retourne rien.
 
Il vaut mieux mettre le return false dans le onclick car ainsi tu controles vraiment ce que tu veux faire. Imagine que tu veux que aller sur une page et en meme temps lancer le onclick, ben sans return false tu peux.
 
sinon on pourrait très bien mettre le return false dans la fonction si on fait :  

Code :
  1. function truc() {
  2.   return false;
  3. }
  4. <a href="#" onclick="return truc();">dfdf</a>

n°1450417
dwogsi
Défaillance cérébrale...
Posté le 01-10-2006 à 15:42:30  profilanswer
 

gatsu35 a écrit :

sinon on pourrait très bien mettre le return false dans la fonction si on fait...


Ba c'est bien ce que j'avais mis au départ.
De toute façon c'est du détail ça.

n°1450433
gatsu35
Blablaté par Harko
Posté le 01-10-2006 à 16:30:27  profilanswer
 

dwogsi a écrit :

Ba c'est bien ce que j'avais mis au départ.
De toute façon c'est du détail ça.


Ah merde j'avais pas vu pardon :o

n°1450622
anapajari
s/travail/glanding on hfr/gs;
Posté le 02-10-2006 à 09:55:36  profilanswer
 

Bon j'ai le droit de jouer moi ???  
Perso j'aurais fait comme ça:

Code :
  1. <a href="http://www.domaine.com/infos.php?couleur=bleu">Bleu</a>
  2. <a href="http://www.domaine.com/infos.php?couleur=Rouge">Rouge</a>
  3. <a href="http://www.domaine.com/infos.php?couleur=Vert">Vert</a>


et pour le js:

Code :
  1. window.onload = function(e){
  2.   var aNodes = document.getElementsByTagName('a');
  3.   for(var i=0; i<aNodes.length; i++){
  4.     if ( aNodes[i].href.indexOf('infos.php?couleur') >= 0 ){
  5.       aNodes[i].onclick = function(e){
  6.          dimensions="width=300,height=300,top=50,left=100,screenY=50, screenX=100, resizable=no";
  7.          window.open(this.href,dimensions+", scrollbars=yes,location=yes" );
  8.          return false;     
  9.       }
  10.     }
  11.   }
  12. }


 
Question de gout hein :o


Message édité par anapajari le 02-10-2006 à 09:56:13
mood
Publicité
Posté le 02-10-2006 à 09:55:36  profilanswer
 

n°1450882
dwogsi
Défaillance cérébrale...
Posté le 02-10-2006 à 16:23:47  profilanswer
 

Franchement je suis pas trop fan.
Ca allège bien le code html mais alors ça allourdi quand même beaucoup le js.

n°1450908
anapajari
s/travail/glanding on hfr/gs;
Posté le 02-10-2006 à 16:54:58  profilanswer
 

Boaah, ça alourdit pas trop. C'est surtout que je l'ai écrit sauce goret là!
Tu mets la fonction "onclick" dans une vraie fonction et c'est mis en cache :o


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

  Ouvrir des fenêtres sous plusieurs liens

 

Sujets relatifs
Ouvrir un exploreurBESOIN D'AIDE SVP - Contenu textbox vers cellules plusieurs classeurs
recherche de données dans excel sans ouvrir les fichiersOuvrir deux page en même temps
Modifier plusieurs pages html à la volée via "rechercher/remplacer"[MySQL] Modifier 1 ou plusieurs caractères dans une bd?
Plusieurs musiques en fond sonoretracer des rectangles sur plusieurs pages
page appelée plusieurs fois au lieu d'une[Access][VBA] Construction d'un lien HTML fonction de plusieurs champs
Plus de sujets relatifs à : Ouvrir des fenêtres sous plusieurs liens


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