【发布时间】:2012-02-10 19:23:33
【问题描述】:
我有一个包含几十个元素的图像映射,其中大部分是固定的。但有些是有条件的,我希望他们在某些时候但不是所有时候都活跃。
有没有办法禁用/启用 <area> 元素而不将其从 DOM 中移除?
【问题讨论】:
我有一个包含几十个元素的图像映射,其中大部分是固定的。但有些是有条件的,我希望他们在某些时候但不是所有时候都活跃。
有没有办法禁用/启用 <area> 元素而不将其从 DOM 中移除?
【问题讨论】:
您可以尝试为区域元素添加/删除禁用的属性。
【讨论】:
area 元素没有“禁用”属性。 (w3.org/TR/html401/struct/objects.html#h-13.6.1) 你一定在想textareas。
如果您使用return false; 处理 onclick 事件,您可以阻止它在单击时链接到它的 href。
document.getElementById("your-area-id").setAttribute("onclick", "return false;");
这会终止链接。
我注意到您没有用 JavaScript 标记问题,所以...
<area href="some-url.html" onclick="return false;" />
... 也可以。
您是否需要禁用任何其他行为或仅此而已?
【讨论】:
不幸的是没有“禁用”属性,但我发现如果你给热点没有表面积,那么用户无法点击它,它似乎被隐藏了。
对于一个圆圈...
document.getElementById('mapname').areas[areaindex].coords="0,0,0";
或者,对于一个矩形...
document.getElementById('mapname').areas[areaindex].coords="0,0,0,0";
【讨论】: