我有一个图像映射,它有几十个元素,其中大部分是固定的。但有些是有条件的,我希望他们在某些时候但不是一直都很活跃。
有没有一种方法可以在不从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";