为了账号安全,请及时绑定邮箱和手机立即绑定

有几个问题,求解答!!!

  1. var tbody=document.getElementById("table").lastChild;放在addtr()函数外面为什么会报错?

  2. IE8下添加一行,样式跟别的浏览器完全不一样,怎么解决?http://img1.sycdn.imooc.com//597979440001fcbc13070453.jpg

  3. 使用removeChild()创建删除函数,没有作用?看别人的问题这样写是可以的?


正在回答

4 回答

第二个ie678是存在兼容问题的,不管是默认样式也好,代码也好,差别都很大,正常项目我会引入reset包重置默认样式或者自定义一个样式不用系统本身自带的。

第三个,关键字和保留字是不能作为函数名和变量名的,即使现在不出问题以后也肯定会出问题,最好命名一些有含义的命名,同时最好遵守驼峰命名法

0 回复 有任何疑惑可以回复我~
#1

风到这里就是粘 提问者

非常感谢!
2017-08-02 回复 有任何疑惑可以回复我~

同理...

0 回复 有任何疑惑可以回复我~
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>制作一个表格,显示班级的学生信息</title>
<script type="text/javascript">
window.onload = function(){
//鼠标移动改变背景,鼠标移到不同行上时背景色改为色值为 #f2f2f2,移开鼠标时则恢复为原背景色 #fff
//提示:1.获取表格的行,getElementsByTagName 。2.使用for进行循环,为每行添加事件及背景颜色设置。
var trs=document.getElementsByTagName("tr");
for (var i = 0; i < trs.length; i++) {
trs[i].onmouseover=function(){
this.style.backgroundColor="pink";
};
trs[i].onmouseout=function(){
this.style.backgroundColor="#fff";
};
}
}

// 编写一个函数,供添加按钮调用,动态在表格的最后一行添加一行;
// 使用createElement()、innerHTML、appendChild()
function addtr(){
var stuNo=prompt("请输入学号:","");
var name=prompt("请输入姓名:","");
var newtr=document.createElement("tr");
newtr.innerHTML='<td>'+stuNo+'</td>'+'<td>'+name+'</td>'+'<td>'+'<a href="javascript:deleteRow();" >删除</a>'+'</td>'; //innerHTML可以解析HTML标签
var tbody=document.getElementById("table").lastChild;//浏览器在table标签下默认添加tbody节点,为什么放到addtr()外面不好使?
tbody.appendChild(newtr);
}
//  使用removeChild()创建删除函数,删除当前行
function deleteRow(){
var tbody=document.getElementById("table").lastChild;
tbody.removeChild(this.parentNode.parentNode);
}
</script>
</head>
<body>
<table border="1" width="50%" id="table">
<tr>
<th>学号</th>
<th>姓名</th>
<th>操作</th>
</tr>
<tr>
<td>xh001</td>
<td>王小明</td>
<td><a href="javascript:deleteRow();" >删除</a></td><!--在删除按钮上添加点击事件  -->
</tr>
<tr>
<td>xh002</td>
<td>刘小芳</td>
<td><a href="javascript:deleteRow();" >删除</a></td><!--在删除按钮上添加点击事件  -->
</tr>
</table>
<input type="button" value="添加一行" onclick="addtr()" /><!--在添加按钮上添加点击事件  -->
</body>
</html>


0 回复 有任何疑惑可以回复我~

是不是吧代码贴出来看看?

0 回复 有任何疑惑可以回复我~
#1

风到这里就是粘 提问者

贴了,麻烦帮我看下
2017-07-28 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
JavaScript进阶篇
  • 参与学习       468046    人
  • 解答问题       21891    个

本课程从如何插入JS代码开始,带您进入网页动态交互世界

进入课程

有几个问题,求解答!!!

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信