Détecter le bouton du milieu (bouton de défilement) avec jQuery
J'ai une liste avec les balises pour lire certains fichiers mp3 onclick. Il fonctionne très bien lors de la liaison sur le "clic" de l'événement avec jQuery:
$oo.data({'__mp3play':true,'wapiHandle':h+0,'wapiIndex':o.ajaxPlayList[h].length})
.bind( 'click', function()
{ var wh = $j(this).data('wapiHandle');
if( typeof o.regObjects[wh] == 'object' && o.regObjects[wh].play(this.href))
{ return false; }
});
En cliquant sur le bouton gauche de la souris:
Il désactive par défaut de manipulation lors de mon plugin flash est chargé, sinon il sera ouvert normalement.
MAIS:
Lorsque j'utilise le scrollbutton de la souris et cliquez dessus, cliquez sur l'événement ne sera pas tiré, et le lien s'ouvre normalement.
J'ai essayé d'utiliser mousedown ou mouseup événements mais cela n'aide pas, le lien s'ouvre normalement avec l'effet secondaire que la musique commence à jouer aussi avec le flash player.
Aussi preventDefault()
ne fonctionne pas du tout.
Quelqu'un peut-il me dire comment faire pour détecter le bouton central de la souris cliquez sur (bouton de défilement de la souris)?
Merci pour vos commentaires.
PS: j'ai déjà essayé d'autres solutions sur le "bouton du milieu", disponible sur ce site.
Testé dans tous les types de navigateurs avec le même résultat.
EDIT:
Cela ne fonctionne pas, le lien sera ouvert normalement lors de l'utilisation du bouton central de la souris. Lorsque vous utilisez le bouton gauche de la souris, rien ne se passe.
$oo.bind( 'mousedown click mouseup', function(e)
{ e.preventDefault(); e.stopPropagation(); return false; });
source d'informationauteur Codebeat
Vous devez vous connecter pour publier un commentaire.
Bien après un rapide test, il semble que les trois sont ordonnées comme suit:
Donc, si vous avez eu:
Ok, je pense que je l'ai. Voici un violon qui semble fonctionner. Le truc (au moins avec FF4) semble être la lier à un gestionnaire de clic à la
document
et de l'avoir arrêter la propagation.Cette solution a été trouvé sur cette page du forum.
Bon, les gars,
Vous remercie pour votre intervention. '@ne.bon.à l'.codage' a une solution sympa mais ne fonctionne pas sur IE (voir plus loin sur cette écriture) mais c'est un bon point de départ. - Je modifier son code:
Le bouton du milieu agit maintenant comme le bouton gauche d'une souris. Comme vous pouvez le voir IE a besoin d'un peu plus, nous devons unfocus la balise de lien pendant 1 seconde pour éviter qu'il sera ouvert dans un onglet extra. J'utilise ici une façon simple de le faire, créer un "pour l'œil" transparent div (opacity = 0.01) qui seront placés sur le contenu de la fenêtre de sorte que tout lien sur la page sera floue.
L'utilisateur ne remarquerez aucune différence, sauf que le pointeur de la souris peut changer d'un pointeur par défaut et après une seconde, il les changer pour le pointeur (IE uniquement). Je peux vivre avec ça.
J'accepte cela comme une réponse, mais si vous avez une meilleure idée de me le faire savoir.
e.qui devrait le faire:
Exemple Simple:
Si vous, (comme moi) trouvé ceci à cause de l'étrange-o milieu cliquez sur les bugs de clients. Et vous voulez juste quelque moyen ou clic droit de se comporter comme un clic gauche
Oublier tout ce que boiteux code pour IE.
Court et doux:
Évidemment, si vous avez besoin d'un peu plus de discrimination, vous pouvez faire quelque chose comme: