Une image cliquable permet de présenter des menus graphiques en plus des liens textuels.
Définir une image cliquable revient à définir des zones sensibles (rectangulaires, circulaires ...) et des actions correspondant à chacune d'entre elles.
Il existe plusieurs façons de traiter les actions de l'utilisateur sur une image:
Le marqueur "MAP" sert à définir le début et la fin d'une section de définition de zones sensibles.
Le marqueur "AREA" sert à définir des zones à l'intérieur d'une "MAP".
Le paramètre NAME sert à définir un nom symbolique pour la définition de zones cliquables
correspond à la forme de la zone sensible.
SHAPE = "RECT ou POLY ou CIRCLE"
indique les coordonnées en pixel pour définir la taille des zones.
Le coin en haut à gauche de l'image est le point d'origine.
les coordonnées à spécifier sont le coin en haut à gauche et celui en bas à droite.
<AREA SHAPE="rect" COORDS="16,17,249,77">
les coordonnées du centre et la valeur du rayon sont nécessaires (3 nombres).
<AREA SHAPE="circle" COORDS="16,249,10">
on donne les coordonnées pour chaque point
COORDS="x1,y1,x2,y2,x3,y3,...,...."
<AREA SHAPE="poly" COORDS="10,10, 10,15, 15,15, ....">
contient l'URL qui est chargé lorsque l'utilisateur clique sur une des zones sensibles.
<MAP name="pegmap">
<AREA SHAPE="rect" COORDS="16,17,249,77" HREF="http://tecfa.unige.ch/~schneide>
<AREA SHAPE="rect" COORDS="16,91,249,213" HREF="http://tecfa.unige.ch/welcome.html">
<AREA SHAPE="rect" COORDS="16,228,249,437" HREF="http://tecfa.unige.ch/~jermann">
</MAP>
Le paramètre USEMAP se met à l'intérieur d'une commande IMG et indique au client que l'image en question est cliquable.
La valeur du paramètre USEMAP contient l'adresse d'une section MAP
(auquel cas on le déclare en commençant par #, e.g. "#nom_carte")
<a href="../cgi-bin/imagemap/test">
<img scr="../test.gif" ISMAP>
</a>
Le fichier test.map contient les éléments suivants (syntaxe pour les serveurs NCSA):
default /~jermann/garbage.html
rect http://tecfa.unige.ch/~jermann/garbage.html#staf11 7,7 144,144
rect http://tecfa.unige.ch/~jermann/garbage.html#staf12 148,7 280,144
rect http://tecfa.unige.ch/~jermann/garbage.html#staf13 281,7 420,144
rect http://tecfa.unige.ch/~jermann/garbage.html#staf14 7,145 144,280