window.onload = function(){
// 鼠标移动改变背景,可以通过给每行绑定鼠标移上事件和鼠标移除事件来改变所在行背景色。
var tr=document.getElementsByTagName("tr");
for(var i=0;i<tr.length;i++){
changeBgColor(tr[i]) ;
}
function changeBgColor(obj){
obj.onmouseover=function(){
obj.style.backgroundColor= "#f2f2f2";
}
obj.onmouseout=function(){
obj.style.backgroundColor= "#fff";
}
}
}
// 编写一个函数,供添加按钮调用,动态在表格的最后一行添加子节点;
function add(){
var tr=document.createElement("tr");
var num=prompt("请输入学号:","xh00");
var name=prompt("姓名:");
tr.innerHTML="<td>"+num+"</td>"+"<td>"+name+"</td>"+"<td><a href="javascript:;" onclick="del(this)" >删除</a></td>";
tr.parentNode.appendChild(tr);
/*for(var i=0;i<tr.length;i++){
changeBgColor(tr[i]) ; */
}
}
// 创建删除函数
function del(obj){
var tr=obj.parentNode.parentNode;
tr.parentNode.removeChild(tr);
}
我是把鼠标事件单独写在一个函数中了,然后在添加函数中调用事件函数
每一个事件绑定的函数都调用obj,obj到底是什么鬼?会自己变化的?改为this试试吧