日期:2014-05-17  浏览次数:20507 次

javascript中的this
我现在做的一个东西,就是当表格中某行在onmouseover的时候 , background-color改变
html部分代码:
<tr>
<td>June 9th</td>
    <td>Portland,<abbr title="oregen">OR</abbr></td>
    <td>Crystal Ballroom</td>
</tr>
<tr>
<td>June 10th</td>
    <td>Seattle,<abbr title="Wshington">WA</abbr></td>
    <td>Crocodile Cafe</td>
</tr>
<tr>
<td>June 12th</td>
    <td>Sacramento,<abbr title="Califoria">CA</abbr></td>
    <td>Torch Club</td>
</tr>
<tr>
<td>June 17th</td>
    <td>Austin,<abbr title="Texas">TX</abbr></td>
    <td>Speakeasy</td>
</tr>
然后是js的
function onmouseChange(){
var trs=document.getElementsByTagName("tr");
for(var i=0;i<trs.length;i++){
trs[i].onmouseover=function(){
//addClass(trs[i],"omc");
addClass(this,"omc");
}
}
}
这个函数的意思就是当onmouseover的时候,为其加一个class="omc"的属性,通过设置omc的背景色来达到要求。
但是被我注掉的那段代码addClass(trs[i],"omc");为什么没有效果,而用this来指代就可以。谁能指教一下,谢谢

------解决方案--------------------
this代表当前tr对象啊