Image Map

You can use JavaScript to create client-side image map. Client-side image maps are enabled by the usemap attribute for the <img /> tag and defined by special <map> and <area> extension tags.

The image that is going to form the map is inserted into the page using the <img /> element as normal, except that it carries an extra attribute called usemap. The value of the usemap attribute is the value of the name attribute on the <map> element, which you are about to meet, preceded by a pound or hash sign.

The <map> element actually creates the map for the image and usually follows directly after the <img /> element. It acts as a container for the <area /> elements that actually define the clickable hotspots. The <map> element carries only one attribute, the name attribute, which is the name that identifies the map. This is how the <img /> element knows which <map> element to use.

The <area> element specifies the shape and the coordinates that define the boundaries of each clickable hotspot.

Example

The following code combines imagemaps and JavaScript to produce a message in a text box when the mouse is moved over different parts of an image.

<html><head><title>Using JavaScript Image Map</title><script type ="text/javascript">functionshowTutorial(name){
        document.myform.stage.value = name
     }&lt;/script&gt;&lt;/head&gt;&lt;body&gt;&lt;form name ="myform"&gt;&lt;input type ="text" name ="stage" size ="20"/&gt;&lt;/form&gt;&lt;!-- Create  Mappings --&gt;&lt;img src ="/images/usemap.gif" alt ="HTML Map" border ="0" usemap ="#tutorials"/&gt;&lt;map name ="tutorials"&gt;&lt;area shape="poly" 
        coords ="74,0,113,29,98,72,52,72,38,27"
        href ="/perl/index.htm" alt ="Perl Tutorial"
        target ="_self" 
        onMouseOver ="showTutorial('perl')" 
        onMouseOut ="showTutorial('')"/&gt;&lt;area shape ="rect" 
        coords ="22,83,126,125"
        href ="/html/index.htm" alt ="HTML Tutorial" 
        target ="_self" 
        onMouseOver ="showTutorial('html')" 
        onMouseOut ="showTutorial('')"/&gt;&lt;area shape ="circle" 
        coords ="73,168,32"
        href ="/php/index.htm" alt ="PHP Tutorial"
        target ="_self" 
        onMouseOver ="showTutorial('php')" 
        onMouseOut ="showTutorial('')"/&gt;&lt;/map&gt;&lt;/body&gt;&lt;/html&gt;</pre>

Output

You can feel the map concept by placing the mouse cursor on the image

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *