IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

JavaScript Discussion :

Ouverture d'un lien avec CTRL+CLIC


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé Avatar de Zebulon777
    Homme Profil pro
    Informaticien
    Inscrit en
    Février 2005
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Février 2005
    Messages : 1 327
    Par défaut Ouverture d'un lien avec CTRL+CLIC
    Bonjour à tous,

    j'ai un truc bizarre : je créé un lien dynamiquement que je ne veux activer que par CTRL+CLIC.
    Ce que j'ai fait fonctionne correctement sauf si on fait un CTRL+doubleclic : alors là ça ouvre non seulement la page demandée, mais en plus un nouvel onglet contenant la page appelante.

    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
     
    // ---------------------------------------------------------------------------------------------------------------------
    function Trt_PiedDePage() {
    //	WVersion = "<A href='NotesDeVersion.html'>" + G_Version + " (" + G_DatePublication + ")</a>";
    	G_CTRL = "VERSION";
    	WVersion = "<A href='#' onClick='FonctionCTRL(event);return false;'>" + G_Version + " (" + G_DatePublication + ")</a>";
    	document.getElementById("Cell_Version").innerHTML = WVersion;
    }
    //------------------------------------------------------------------------------------
    function FonctionCTRL(P_Event) {
     
    	if(P_Event.ctrlKey)
    	{
    		if (G_CTRL == "VERSION")
    		{
    			G_CTRL = "";
    			window.open("NotesDeVersion.html", "_top");
    		};
    	};
    }
    //------------------------------------------------------------------------------------
    Qu'est-ce qui cloche ?

    Merci d'avance pour votre aide.

  2. #2
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    Il faut empêcher le navigateur de faire l'action par défaut avec P_Event.preventDefault();

  3. #3
    Membre éprouvé Avatar de Zebulon777
    Homme Profil pro
    Informaticien
    Inscrit en
    Février 2005
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Février 2005
    Messages : 1 327
    Par défaut
    Ha ok, je ne connaissant pas du tout.
    Je le mets après le false ou dans la fonction de traitement de l’événement ?

    J'ai essayé au début et à la fin de la fonction de traitement de l’événement et ça ne fonctionne pas.

  4. #4
    Membre éprouvé Avatar de Zebulon777
    Homme Profil pro
    Informaticien
    Inscrit en
    Février 2005
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Février 2005
    Messages : 1 327
    Par défaut
    Bon, ben y a rien à faire, je n'y arrive pas : quoique je fasse, il y a toujours une ouverture de la page appelante dans un nouvel onglet.
    Je suis preneur de toute solution

  5. #5
    Membre éprouvé Avatar de Zebulon777
    Homme Profil pro
    Informaticien
    Inscrit en
    Février 2005
    Messages
    1 327
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 58
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Informaticien

    Informations forums :
    Inscription : Février 2005
    Messages : 1 327
    Par défaut
    Bon, ben comme je tournais en rond sur ce problème et que je n'ai plus vraiment le temps de m'y plonger, j'ai changé mon fusil d'épaule et faisant la même chose mais sur une image et là, impeccable, tout fonctionne.

    Pour finir, je pense que le problème vient du fait que le CTRL+Lien a déjà une action prévu par défaut sur le net.

    L'affaire close.

  6. #6
    Rédacteur/Modérateur

    Avatar de SylvainPV
    Profil pro
    Inscrit en
    Novembre 2012
    Messages
    3 375
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2012
    Messages : 3 375
    Par défaut
    preventDefault() sert justement à empêcher l'action par défaut... Il faut évidemment le mettre dans ta FonctionCTRL, là où P_Event est déclaré

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 9
    Dernier message: 27/01/2013, 17h20
  2. Atteindre une fonction avec CTRL + Clic ne fonctionne pas
    Par DaYonyon dans le forum Eclipse PHP
    Réponses: 0
    Dernier message: 18/03/2010, 14h40
  3. MSFlexgrid et multi selection avec ctrl+clic gauche
    Par CowBoysDaRk dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 13/08/2007, 15h18
  4. forcer l'ouverture d'un lien hypertexte avec IE
    Par beavis6511 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 5
    Dernier message: 12/12/2005, 15h20
  5. [eclipse 3.1][configuration]pb lors du ctrl+clic (lien)
    Par Invité dans le forum Eclipse Java
    Réponses: 2
    Dernier message: 24/09/2005, 01h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo