2009-02-04 11 views
1

Google maps est un affichage impressionnant de ce que vous pouvez faire avec javascript et Ajax-bonté. Même la molette de la souris et le clic droit fonctionnent pour fournir des fonctionnalités spécifiques.Événements de souris spéciaux dans un navigateur: roue, clic-droit?

Dans la spécification HTML standard, je ne vois pas d'événement "onmouserightclick" ou de traitement javascript basique similaire pour la roulette de la souris. Peut-être que je cherche dans les mauvais endroits.

Je présume que ces événements sont spécifiques au navigateur et à la plate-forme (ou «sensible» au lieu de spécifique). Et je me demande quel est le langage de base, HTML et Javascript est nécessaire pour exploiter ces événements, dans tous les navigateurs.

Naturellement, lors de la conception d'un site, ces fonctionnalités doivent être supplémentaires, car certaines personnes utilisent encore la souris à un bouton. Comment utiliser les événements avec la molette de la souris et cliquer avec le bouton droit de la souris? Je cherche un exemple de code.

EDIT: Merci pour le code de jQuery les gars! Le développeur de système en moi a encore des questions et des doutes cependant. Principalement je suis préoccupé par les limitations de plate-forme qui sembleraient s'appliquer ici. Existe-t-il un navigateur dans lequel certaines de ces fonctionnalités ne fonctionnent pas? Est-ce que les événements de haut en bas de la molette de la souris permettent également de cliquer sur les événements de la molette de la souris? Je m'attends à ce qu'il y ait des limites et je me demande si cela est documenté officiellement. Je veux savoir comment cela fonctionne au niveau bas. Je suis content de voir que c'est facile dans jQuery, une autre raison pour moi d'y entrer.

Répondre

4

Wheel Mouse:
ol » no-jquery-ou-prototype bibliothèque Méthode: here

méthode Prototype: Here

méthode JQuery: Here

1

vous dit cross-browser de sorte que vous devez dire jquery: P

http://www.ogonek.net/mousewheel/jquery-demo.html

http://abeautifulsite.net/notebook_files/68/demo/

Je parie que vous pouvez trouver javascript qui font cela, mais je pense qu'il est toujours mieux d'aller avec le composant (ou plugin), car il pourrait y avoir des bogues (ou peut-être des bogues inter-navigateurs) et la personne qui l'a fait recevrait l'email de quelqu'un qui l'utilise et le corrige. avec javascript pur vous devriez toujours le vérifier dans chaque version de chaque navigateur.

+1

La question demande « de base, plaine HTML et Javascript ". Peut-être que nous sommes principalement intéressés par la façon dont cela fonctionne réellement plutôt que de voir une autre annonce pour jQuery. – bobince

+0

alors pourquoi cross-navigateur?Si vous n'êtes pas d'accord avec jquery, pouvez-vous le poster dans chaque navigateur? – IAdapter

2

Si vous utilisez jQuery, il est extrêmement simple de faire des choses avec le menu clic droit:

$(document).bind("contextmenu",function(e){ 
    alert("You right clicked!"); 
    return false; //disable the context menu 
}); 

Sinon, vous pouvez utiliser ce script, fourni par quirskmode: http://www.quirksmode.org/js/events_properties.html#link6

En ce qui concerne la molette de la souris, ce grand script que je l'ai utilisé dans le passé:

http://adomas.org/javascript-mouse-wheel/

Questions connexes