我正在创建从我的数据库中取出的“标记”的按钮。我想将鼠标事件侦听器添加到每个按钮。但是,听众似乎只能在最后创建的按钮上工作。有任何想法吗?谢谢。将事件监听器添加到从数组创建的按钮
var tagsContainer = document.getElementById('tags');
var tagarray = placetags.split(" ");
for (var tagcounter = 0; tagcounter < tagarray.length; tagcounter++){
var tag = document.createElement('input');
tag.type = 'button';
tag.value = tagarray[tagcounter];
tag.id = 'tagbutton';
tagsContainer.appendChild(tag);
tag.addEventListener('mouseover' , function(){
tag.style.color = 'white';
});
tag.addEventListener('mouseout' , function(){
tag.style.color = 'orange';
});
}
这样的事情? http://jsfiddle.net/mjqWL/3/ – Blender
谢谢。当然是一个简单的“this.style.color”而不是“tag.style.color”! – stokexx
对不起,我甚至没有意识到我改变了这一点。亚当的答案解释了原因。 – Blender