Javascript:如何更改所有<区域>标签ID的href
Javascript: How to change href for all <area> tag ID's?
我正在尝试执行以下代码,但针对我所在地区的每个 ID。我尝试过使用循环,但我无法弄清楚如何根据 alt 标签更改每个 ID 的 HREF,如果这有意义的话......
JAVASCRIPT:
function doSomething(getID){
var a = document.getElementById('cp1');
var b = getID.alt;
a.href = b + ".html";
};
.HTML:
<area id="cp1" class="jTip" shape="rect" coords="0,77,41,123" alt="Place1" onmouseover="javascript:doSomething(this);" href="javascript:doSomething(this);">
<area id="cp2" class="jTip" shape="rect" coords="0,122,41,171" alt="Place2" onmouseover="javascript:doSomething(this);" href="javascript:doSomething(this);">
<area id="cp3" class="jTip" shape="rect" coords="0,220,41,170" alt="Place3" onmouseover="javascript:doSomething(this);" href="javascript:doSomething(this);">
该代码适用于第一个 ID,但我希望它适用于与区域标签相关的所有 ID,而不是我只是将每个 ID 与一个新变量放在一起,然后更改每个 id 的 HREF。
我有 60 多个区域或 ID,但如果可能的话,我真的需要简化代码。
如果有人能帮助我,我们将不胜感激。
谢谢!
看起来你想使用 document.getElementsByTagName
,它返回一个 NodeList,然后你可以迭代。
var areas = document.getElementsByTagName('area'), // get
i;
for (i = 0; i < areas.length; ++i) // loop
areas[i].href = areas[i].alt + '.html';
var areas = document.getElementByTagName("area");
for (var i = 0; i < areas.length; ++ i) {
var h = areas[i].alt;
areas[i].href = h + ".html";
}
您可以使用getElementsByTagName('area')代替getElementById。 这将为您提供一个带有标签名称"area"的所有元素的数组。
感谢您的回复,您的答案非常有效!经过一些反复试验,我也找到了替代方案。在发送问题之前花了几天时间尝试谷歌方法。
var tag = document.getElementsByClassName('jTip');
for (var i = 0; i < tag.length; ++i) {
var a = document.getElementById(tag[i].id);
var b = getID.alt;
a.href = b + ".html";
}
};
你的方式要好得多,感谢您的快速回复。问题解决了!
你在doSomething
函数中得到了this
,所以你已经有了元素,所以只需分配值
function doSomething(element){
element.href = element.alt + ".html";
};
相关文章:
- 如何在Jquery函数中为自动完成文本区域指定一个变量作为Id
- 如何获取点击区域的id而不是父id
- 在按键时检索文本区域的 ID
- 如何将文本插入到几个带有 id 的文本区域中的一个文本区域中
- 按钮更改由按钮id输入的表单文本区域
- summernote获取我的id短信区域
- 使用 ID 更新文本区域值,而不是在 AngularJs 中使用 ng-model
- CKEditor 插件 - 当前文本区域的 ID
- AngularJS:获取一个文本区域的值及其 ID 并将其分配给另一个 textare
- Javascript:如何更改所有<区域>标签ID的href
- 通过 ID jquery 限制文本区域字符
- 文本区域名称,ID 与--.相同
- 导航栏的链接不会转到区域 ID
- 如何从使用数据库行作为 id 的文本区域中获取值和 id
- 点击后获取焦点文本区域id
- 通过它禁用文本区域's类(不是id)
- 在TinyMCE 4.0中,如何通过id获取文本区域的内容
- 获取语言区域设置id
- 将用户区域设置包含到Keycloak ID令牌中
- 网络中区域id的正则表达式