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 :

Détecter si un lien va être ouvert dans une nouvelle fenêtre / onglet


Sujet :

JavaScript

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre extrêmement actif Avatar de mapmip
    Profil pro
    ulla
    Inscrit en
    Juillet 2006
    Messages
    1 326
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : ulla

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 326
    Par défaut Détecter si un lien va être ouvert dans une nouvelle fenêtre / onglet
    salut,

    je souhaite savoir si un utilisateur clique sur un lien de facon normale ou
    s'il l'ouvre dans une nouvelle fenetre/onglet

    En fonction de ca j'active un code javascript différent !


    Merci d'avance

  2. #2
    Rédacteur/Modérateur

    Avatar de SpaceFrog
    Homme Profil pro
    Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Inscrit en
    Mars 2002
    Messages
    39 659
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 75
    Localisation : Royaume-Uni

    Informations professionnelles :
    Activité : Développeur Web Php Mysql Html Javascript CSS Apache - Intégrateur - Bidouilleur SharePoint
    Secteur : Industrie

    Informations forums :
    Inscription : Mars 2002
    Messages : 39 659
    Billets dans le blog
    1
    Par défaut
    Tu ne pourrais éventuellement que récupérer l'attribut target du lien.

    Sinon si il passe par l'ergonomie du navigateur son navigateur "ouvrir dasn un nouvele onglet " "nouvelle fenetre" ... ou click milieu de souris tu ne peut pas l'intercepter à ma connaissance.
    Ma page Developpez - Mon Blog Developpez
    Président du CCMPTP (Comité Contre le Mot "Problème" dans les Titres de Posts)
    Deux règles du succès: 1) Ne communiquez jamais à quelqu'un tout votre savoir...
    Votre post est résolu ? Alors n'oubliez pas le Tag

    Venez sur le Chat de Développez !

  3. #3
    Membre chevronné
    Homme Profil pro
    Analyse système
    Inscrit en
    Mai 2014
    Messages
    393
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Arménie

    Informations professionnelles :
    Activité : Analyse système
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Mai 2014
    Messages : 393
    Par défaut
    En voilà, un petit défi! La solution ci-dessous passe par un cookie...

    La première page, nommée index.html par exemple :

    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
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    <!DOCTYPE html>
    <html>
     
    <head>
    <meta charset="utf-8">
    <script>
     
    function createCookie(name,value,days) {
    	if (days) {
    		var date = new Date();
    		date.setTime(date.getTime()+(days*24*60*60*1000));
    		var expires = "; expires="+date.toGMTString();
    	}
    	else var expires = "";
    	document.cookie = name+"="+value+expires+"; path=/";
    }
     
    function eraseCookie(name) {
    	createCookie(name,"",-1);
    }
     
    eraseCookie('ouvre');
    createCookie('ouvre','onglet',4);
     
    </script>
    </head>
     
    <body>
    <a href="page.html" onclick="eraseCookie('ouvre');createCookie('ouvre','normal',4);">OK</a>
    </body>
     
    </html>
    Et la deuxième page, nommée page.html :

    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
    22
    23
    24
    25
    26
    27
    28
    <!DOCTYPE html>
    <html>
     
    <head>
    <meta charset="utf-8">
    <script>
     
    function readCookie(name) {
    	var nameEQ = name + "=";
    	var ca = document.cookie.split(';');
    	for(var i=0;i < ca.length;i++) {
    		var c = ca[i];
    		while (c.charAt(0)==' ') c = c.substring(1,c.length);
    		if (c.indexOf(nameEQ) == 0) return c.substring(nameEQ.length,c.length);
    	}
    	return null;
    }
     
    alert(readCookie('ouvre'));
     
    </script>
    </head>
     
    <body>
    La page...
    </body>
     
    </html>

Discussions similaires

  1. Bloquer les liens ou les ouvrir dans une nouvelle fenêtre
    Par Invité2 dans le forum Outlook Express / Windows Mail
    Réponses: 0
    Dernier message: 01/01/2009, 18h33
  2. Réponses: 11
    Dernier message: 17/06/2008, 16h42
  3. Lien dans une nouvelle fenêtre en xml
    Par Maheux dans le forum XML/XSL et SOAP
    Réponses: 11
    Dernier message: 11/10/2007, 15h16
  4. Ouvrir un lien dans une nouvelle fenêtre
    Par magicibis dans le forum SharePoint
    Réponses: 0
    Dernier message: 08/08/2007, 17h21
  5. Ouvrir un lien dans une nouvelle fenêtre
    Par Le Lézard dans le forum Général JavaScript
    Réponses: 4
    Dernier message: 13/12/2004, 14h43

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