我有一个图像映射,有几十个元素,其中大部分是固定的。但有些是有条件的,我希望它们有一些但不是全部都活跃。html/javascript:有没有办法动态禁用/启用图像地图区域?
有没有办法禁用/启用一个<area>
元素而不从DOM中删除它?
我有一个图像映射,有几十个元素,其中大部分是固定的。但有些是有条件的,我希望它们有一些但不是全部都活跃。html/javascript:有没有办法动态禁用/启用图像地图区域?
有没有办法禁用/启用一个<area>
元素而不从DOM中删除它?
您可以尝试为区域元素添加/删除禁用的属性。
如果您使用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";
的'area'元素没有 “禁用” 属性。 (http://www.w3.org/TR/html401/struct/objects.html#h-13.6.1)您必须考虑textareas。 – 2012-02-10 19:31:30
你说得对,对不起。我应该仔细阅读这个问题。 – 2012-02-10 19:34:34