這樣寫為什么鼠標(biāo)移動(dòng)到一行上顏色不改變?
window.onload = function(){
? ? ? ? var trs = document.getElementsByTagName("tr"); ? ? ?
? ? for(var i=0; i<trs.lenght; i++){
? ? ? ? ? ? ?bgchange(trs[i]);
? ? } ??
}
? ? ? // 鼠標(biāo)移動(dòng)改變背景,可以通過給每行綁定鼠標(biāo)移上事件和鼠標(biāo)移除事件來改變所在行背景色。
? ? function bgchange(obj){
? ? ? ? obj.onmouseover = function(){
? ? ? ? ? ? obj.style.backgroundColor = "#f2f2f2";
? ? ? ? }
? ? ? ? obj.onmouseout = function(){
? ? ? ? ? ? obj.style.backgroundColor = "#fff";
? ? ? ? }
?}
2016-03-24
兩處地方有錯(cuò):
第一:i<trs.lenght ? 應(yīng)該為 ? i<trs.length
第二:最后一個(gè)中括號(hào)錯(cuò)了,要改為英文的。
但像你這樣寫的代碼的話會(huì)有個(gè)問題,那就是添加的 新一行的背景色不會(huì)改變,因?yàn)槟愕腷gchange(obj)函數(shù)是寫在window.onload頁面加載里面的,所以新的一行無法調(diào)用這個(gè)方法,或者說即使調(diào)用了bgchange(obj) 這個(gè)方法,背景色也不會(huì)改變,把改變背景色的代碼完整的寫在一個(gè)函數(shù)里就行了。