我目前正在尝试使用 javascript 实现各种“按钮”。当用户点击 div 时,div 背景应该改变颜色,并且应该有一个列出设备编号的弹出窗口。我计划稍后使用该号码重定向客户。但是现在,我无法注册点击事件。我让事件正常工作了一段时间,但该值始终是“i”的最终值。我的网页中也有 JQuery。
这是一个 JSFiddle 和我的相关代码。 http://jsfiddle.net/G3ADG/9/
HTML结构:
<div class="device" id="device1" value="1">
<div class="device-name" id="deviceName1">Name1</div>
</div>
<div class="device" id="device2" value="2">
<div class="device-name" id="deviceName2">Name2</div>
</div>
<div class="device" id="device3" value="3">
<div class="device-name" id="deviceName3">Name3</div>
</div>
Javascript:
(function() {
var devices = document.getElementsByClassName("device");
for (var i = 0; i < devices.length; i++) {
devices[i].addEventListener("click", function () {
alert(i);
this.style.backgroundColor = "#000000";
})
}
})();
任何帮助或输入表示赞赏。
编辑:修复了 ClassName 调用。但是,返回的警报仍然是错误的。