html/javascript:有没有一种方法可以动态禁用/启用图像映射区域



我有一个图像映射,它有几十个元素,其中大部分是固定的。但有些是有条件的,我希望他们在某些时候但不是一直都很活跃。

有没有一种方法可以在不从DOM中删除<area>元素的情况下禁用/启用它?

您可以尝试向区域元素添加/删除禁用的属性。

如果用return false;处理onclick事件,则可以阻止它在单击时链接到它的href。

document.getElementById("your-area-id").setAttribute("onclick", "return false;");

这会破坏链接。

我注意到你没有用JavaScript标记这个问题,所以…

<area href="some-url.html" onclick="return false;" />

也同样有效。

你还有其他需要禁用的行为吗?

不幸的是,没有"disable"属性,但我发现,如果你不给热点提供表面积,那么用户就无法点击它,它似乎被隐藏了。

对于一个圆。。。

document.getElementById('mapname').areas[areaindex].coords="0,0,0";

或者,对于矩形。。。

document.getElementById('mapname').areas[areaindex].coords="0,0,0,0";