javascript - Javascript 更新数组中的文本
问题描述
我正在尝试更新单击事件的文本,但不知何故,foreach 的索引总是给我第一次迭代 0,我错过了什么:
var sliderTitles = document.getElementsByClassName('avia-caption-title');
var nextSlideBtns = document.getElementsByClassName('next-slide');
var prevSlideBtns = document.getElementsByClassName('prev-slide');
for (var i=0; i < nextSlideBtns.length; i++) {
nextSlideBtns.item(i).onclick = setBtnNames();
}
setBtnNames();
function setBtnNames() {
console.log("clickedd");
Array.from(nextSlideBtns).forEach(
function(element, index, array) {
console.log(index); // always returns 0
if(index == 5) {
element.innerHTML = sliderTitles[0].innerHTML;
} else {
element.innerHTML = sliderTitles[index+1].innerHTML;
}
}
);
}
解决方案
推荐阅读
- angular - .NET Core with Angular:如何配置 IIS 以在 HTML5 模式下重写 URL?
- java - 如何在 java 8 流中使用一对多映射?
- regex - 格式化 rsyslog 消息 - 删除 logserver 的 IP
- xml-parsing - 在 Crystal Reports 公式语言中解析 XML
- hibernate - 具有复合键的孩子的休眠一对多级联持续存在
- php - Mysql返回多个查询错误
- php - PHP - foreach 返回重复的条目
- java - 在多模块 Spring Boot 项目中使用属性
- python - 捕捉键盘敲击不可靠/Python
- python - Python3 globals() 和 locals() 内容