 |

Intercepter le 'clic-droit' |
|

|
 |
|
 |
Le but de ce script est d'intercepter ce qu'on appelle communément le 'Clic-droit',
ou Control-Clic sur Mac. En effet, celui-ci permet d'afficher le source de la page, d'enregistrer une image... on peut
vouloir le 'limiter'.
L'esprit d'Internet étant tout de même le partage, rappelons-le ;-) |
 |
 |
 |
|
 |
Il va falloir agir séparément pour Internet Explorer et pour Netscape. En effet, ils ne gèrent pas la chose de
la même façon.
- Internet Explorer : Grâce à l'instruction
'document.oncontextmenu', on capture directement le fameux clic-droit
(menu contextuel), il suffit donc de lancer une fonction si on a détecté le 'clic-droit'.
Ici, un simple message d'alerte, mais libre à vous de lancer ce que vous souhaitez ;-)
- Netscape : Le 'menu contextuel' n'existe pas selon Netscape, il utilise la
fonction réelle du Javascript qui est 'document.captureEvents(Event.MOUSEDOWN)'
où il s'agit d'intercepter en premier lieu l'événement 'clic' puis de l'analyser.
Les boutons de la souris sont numérotés (si-si ;-), de 1 à 3, se basant sur les souris
à 3 boutons. Le clic-droit est donc le troisième bouton. Pour repérer le bouton
utilisé, JavaScript intègre l'attribut 'which', on teste donc si ce
'which' est égal à '3' !
Ceux d'entre-vous qui connaissent les Macs savent que la souris Apple n'a qu'un bouton... Mais les menus
contextuels existent quand même !! Ils sont accessible par un 'Control + clic'. Il nous faut donc
vérifier que lors du clic, une touche de modification, la touche 'Control' ici, n'était pas
enfoncée. C'est l'objet de la deuxième partie de la fonction pour Netscape. La vérification
des touches du clavier passe par 'modifiers'. Et il se trouve que comme les boutons de
la souris, les touches de modification ont un numéro... (voir ci-dessous). On va donc tout simplement
tester l'appui sur la touche 'Control'.
Attention, Internet Explorer ne reconnait pas l'instruction 'modifiers', ce qui signifie qu'il
est impossible de bloquer le 'Control + clic' si le visiteur utilise Internet Explorer sur Macintosh !!
| Touches |
Numéro |
| Alt (option) |
1 |
| Control |
2 |
| Majuscule |
4 |
| Command (Mac) |
8 |
Si on appuie simultanément sur 'Alt' et 'Control', on obtient '3' (1 + 2), de même si on appuie
simultanément sur 'Control' et 'Command', on obtient '10' (2 + 8)...
|
 |
 |
 |
|
 |
 |
 |
 |
 |
|
Faîtes un 'clic-droit' ou 'Control + clic' n'importe où sur cette page...
|
|
 |
 |
 |
 |
|
 |
 |
 |
|
 |
|