KioskeaKioskeaCommentCaMarcheInscrivez-vous, c'est gratuit !
Jeudi 22 mai 2008 - 21:58:52

[JS] Clique droit sous FF

Rechercher : dans
[JS] Clique droit sous FF
par Erdnax
 Fil de Discussions
Statut : Résolu
mercredi 9 novembre 2005 à 18:51:57
Salut tout le monde,

Je recherche une méthode afin de détecter le clique droit sur un élément de ma page sous firefox.

Sous IE, pas de problème, j'ai fais un onmouseup="hop();" et après je test si event.button==2. Et j'aimerais faire quelque chose de similaire sous FF.

Et ce n'est pas pour empêcher que l'on me prenne des images ou protéger quelque chose, mais c'est vraiment utile !

Si quelqu'un à une idée... Moi chuis moi et toi chais pas...
Répondre à Erdnax  Signaler ce message aux modérateurs Aller au dernier message

1


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par crabs, le mercredi 9 novembre 2005 à 20:52:07 Fil de Discussions
Salut,
Un morceau de code HTML qui permet de détecter le bouton de clic sur une
image. Attention ce code laisse le menu contextuel actif :
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0//EN"
    "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>Image dynamique</title>
<meta http-equiv="Content-Type"
    content="text/html;charset=iso-8859-1">
<script type="text/javascript">
function hop(e)
    {
    alert("HOP " + e.button );
    }
</script>
</head>
<body>
<p>
        <img src="IMAGES/crabe_off.jpeg" style="border:0;"
            alt="crabe" width="200" height="200"
            onmouseup="hop(event)">
</p>
</body>
</html>
..., I think Slackware sounds better than 'Microsoft,'
-- Patrick Volkerding - founder and maintainer of Slackware
Répondre à crabs

2


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par Erdnax, le jeudi 10 novembre 2005 à 09:06:51 Fil de Discussions
Merci, mais en fait ce n'est pas ce que je cherche.

Il faut que le clique gauche soit actif lui, et c'est justement là qu'est mon problème.

Sous IE, pas de problème pour trouver de quel bouton il s'agit, mais sous FF etc, aïe...
Moi chuis moi et toi chais pas...
Répondre à Erdnax

3


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par StreM, le jeudi 10 novembre 2005 à 12:22:48 Fil de Discussions
Salut Erdnax !
Ca va bien ?

Tiens, essaie avec ca :
function down(e) {
// renvoi du bouton suivant navigateur
	if( !e ) {
        if( window.event ) {
            //DOM
            button = window.event;
        } else {
            //TOTAL FAILURE, WE HAVE NO WAY OF REFERENCING THE EVENT
            return;
        }
    }
    if( typeof( e.which ) == 'number' ) {
        //Netscape compatible
        button = e.which;
    } else {
        if( typeof( e.button ) == 'number' ) {
            //DOM
             button = e.button;
         } else {
             //TOTAL FAILURE, WE HAVE NO WAY OF OBTAINING THE BUTTON
            return;
         }
    }
}

la variable button est le numéro de ton bouton (droit ou gauche en fait).
Mais attention !!! Le bouton gauche sous IE =1 mais = 2 sous FF et bouton droit =2 sous IE par exemple (enfin j'en sais plus rien, a toi de voir), donc t'embrouille pas les pinceaux, et teste bien sur tous les navigateurs !

Tiens moi au courant, si tu fais un truc plus propre (c'est pas dur...)
A+ !

Moins le blanc est intelligent, plus le noir lui parait bête
Répondre à StreM

4


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par Erdnax, le jeudi 10 novembre 2005 à 13:25:26 Fil de Discussions
Hey, salut, ca va bien et toi ?

En fait j'ai pas tout compris dans ta fonction. Déjà, elle retourne quoi ?

Et ensuite, il faut simplement que ça marche sous IE et FF, c'est les deux navigateurs que j'utilise et c'est pour mon interface
d'admin, donc il n'y a que moi qui y a accès ;)

Je veux bien en faire un truc plus propre, mais quand j'aurai compris le fonctionnement :P
Moi chuis moi et toi chais pas...
Répondre à Erdnax

5


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par StreM, le jeudi 10 novembre 2005 à 14:01:22 Fil de Discussions
Aaaah ! Un peu de jugeotte, que diable !
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
<script language="javascript" type="text/javascript">
function fonction(e) {
 // renvoi du bouton suivant navigateur
 if( !e ) {
        if( window.event ) {
            //DOM
            button = window.event;
        } else {
            //TOTAL FAILURE, WE HAVE NO WAY OF REFERENCING THE EVENT
            return;
        }
    }
    if( typeof( e.which ) == 'number' ) {
        //Netscape compatible
        button = e.which;
    } else {
        if( typeof( e.button ) == 'number' ) {
            //DOM
             button = e.button;
         } else {
             //TOTAL FAILURE, WE HAVE NO WAY OF OBTAINING THE BUTTON
            return;
         }
    }
alert(button);
}
</script>
    <title></title>
  </head>
  <body onclick="fonction(event);">
  </body>
</html>

Arrange un peu pour que ca fonctionne sous IE, mais ca va pas etre dur ;-)

Sinon, ca va bien, merci !
J'en ai marre du taf, mais ca, ca change pas de d'habitude ;-)

ENCORE MIEUX :
je suis trop bon...
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
  <head>
<script language="javascript" type="text/javascript">
function fonction(e) {
 // renvoi du bouton suivant navigateur
 if( !e ) {
    if( typeof( e.which ) == 'number' ) {
        //Netscape compatible
        if (e.which==3) {;
	alert('bds');}
    } 
  }

}
function fonction2() {  // pour IE
   alert('bds');
}
</script>

    <title></title>
  </head>
  <body onclick="fonction(event);" oncontextmenu="fonction2();">
  </body>
</html>


Moins le blanc est intelligent, plus le noir lui parait bête
Répondre à StreM

6


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par Erdnax, le jeudi 10 novembre 2005 à 15:26:00 Fil de Discussions
Ok, merci pour tout ça, j'ai compris l'idée, reste plus qu'à mettre en pratique :P

EDIT : c'est bon merci.

Sinon po grave, merci ;)
Moi chuis moi et toi chais pas...
Répondre à Erdnax

7


  • Ce message vous semble utile, votez !
  • Signaler ce message aux modérateurs
Par Erdnax, le lundi 14 novembre 2005 à 08:56:06 Fil de Discussions 
Salut à tous,

Juste pour vous donner la solution que j'ai utilisé, vos scripts sont excellents, y a pas à dire, vous assurez... Par contre, j'ai trouvé un méthode tellement plus légère !

En fait, pour détecter le clique droit, il suffit simplement de mettre comme argument de notre élément html :
oncontextmenu="return mafonction()"

Et le tour est joué ;). La fonction renvoie un false dans le cas ou l'action réussie, et un true dans les autres cas. Et c'est tout, et ça marche du tonner ;)

Merci encore pour vos scripts, mais le html est tellement plus simple :P

@+ tous.
Moi chuis moi et toi chais pas...
Répondre à Erdnax
Discussions pertinentes trouvées dans le forum
27/01 19h30Win explorer répond mal après clique droitWindows27/01 22h112
14/11 21h06clique droit "enregis la cible sous" inaInternet19/03 11h343
12/11 12h02Mon ordi plante a cause du clique droitWindows19/11 04h3613
20/08 15h48enregistrement clique droitWindows20/08 17h273
Plus de discussions sur « [JS] Clique droit sous FF » Discussion en cours Discussion fermée Problème résolu
Répondre
Titre du message :
Votre pseudo:
Votre email :
Message: 
  •  
  •  
Options: Recevoir les réponses par mail.
 

Aide