为什么鼠标悬停在javascript中不能使用类,但可以使用ID?
例如,
$(document).ready(function(){
$('.table td').each(function(){
if($(this).text() <1) {
$(this).css('background-color','#fff');
}
else if($(this).text() <29) {
$(this).css('background-color','#9A271C');
}
else if($(this).text() <49) {
$(this).css('background-color','#BA650E');
}
});
});
答案 0 :(得分:2)
你有两个同名的变量,即重新声明和重新分配myIcon
。此外,getElementsByID
不是函数,getElementById
或getElementsById
。然后getElementsById
返回一个带有'array'元素的NodeList。最后,getElementsByClassName
也返回一个NodeList。两者都是类似阵列的,所以你必须这样对待它。
以下是JSFiddle的示例,请注意示例中的getElementsByClassName
仅适用于具有类myIcon
的第一个元素。您可以使用for循环遍历所有元素并更改其侦听器。
var myIcon_class = document.getElementsByClassName('myIcon')[0]; //note, gets first element
var myIcon = document.getElementById('myIcon')
myIcon.onmouseover = function() {
alert("hovered on ID!");
return false;
};
myIcon_class.onmouseover = function() {
alert("hovered on class!");
return false;
};
<span id="myIcon">Id span!</span>
<span class="myIcon">Class span!</span>