HTML map 标签使用详解

1、在图片中标注usemap

<img src="planets.gif" width="145" height="126" alt="Planets" usemap="#planetmap">

2、定义map

<map name="planetmap">
  <area shape="rect" coords="0,0,82,126" alt="Sun" href="sun.htm">
  <area shape="circle" coords="90,58,3" alt="Mercury" href="mercur.htm">
  <area shape="circle" coords="124,58,8" alt="Venus" href="venus.htm">
</map>

解释

map标签定义map,area标签定义可点击的热点,area属性:
shape:定义热点形状,可选参数 rect(矩形)、circle(圆形)、poligon(自定义形状)。
coords:定义形状路径:
当shape=rect时,四个数字依次为:起点X、起点Y、终点X、终点Y。【即区域的左下角坐标(x1,y1)+右上角坐标(x2,y2)组合:coords="x1,y1,x2,y2"】
当shape=circle时,三个数字依次为:中心点X、中心点Y、半径
当shape=poligon时,可定义多个路径点,依次为:起点X、起点Y、路径1X、路径1Y、路径2X、路径2Y......
href定义点击跳转的地址。

有时候需要动态的为coords属性赋值,在JS中控制coords,demo使用JQ写法:

//使用js控制coords,绘制map热点
var mapStartX = 0;  
var mapStartY = 0;  
var mapEndX = 100;  
var mapEndY = 100;  
var mapFill = mapStartX + ','+ mapStartY + ','+ mapEndX + ','+ mapEndY;  
var im_map = $('#im_map').find('area');  
im_map.attr('coords',mapFill); 

应用场景:多用于在图片上设置点击事件,点击图片某一处触发相关操作。

参考demo

https://www.w3cschool.cn/htmltags/tag-map.html
在此页面点击“尝试一下”,然后点击图片的几处,出来的效果不同

posted @ 2022-07-08 09:51  huihuihero  阅读(1419)  评论(0编辑  收藏  举报