JavaScript进阶篇9-22编程练习,创建删除函数这里不会写,其他同学代码有点看不懂,麻烦讲解下

来源:9-22 编程练习

Missvia

2015-12-23 22:37

 // 创建删除函数
     function del(obj)
     {
         var tr=obj.parentNode.parentNode;
         tr.parentNode.removeChild(tr);
     }

麻烦懂的同学给讲解下,这样写是什么意思啊,谢谢~

写回答 关注

2回答

  • 迷途的马尔斯
    2015-12-23 22:49:40
    已采纳

    DOM操作懂吗?或者说文档树,你看那个表格,它其实是一棵文档树,删除是一个a标签,删除上面有一个老爸(parentNode)td,td上面又有一个老爸(parentNode)tr对吧,以此类推,这里del()函数是把a标签(删除)包装成了一个对象(obj),函数里面定义一个tr对象,它应用了obj的老爸的老爸的属性,刚好就是html里面的tr,然后这个tr对象的老爸采用了一个removeChild()的方法(就是把儿子干掉了)这个儿子的名字刚好叫tr,所以就实现了删除的功能了

    迷途的马尔斯 回复开普勒

    这里传进来的obj是一个引用对象来的,你在引用下面是找不到tr这个东西的,只能找到tr对应的引用

    2015-12-31 16:07:45

    共 4 条回复 >

  • 猫的第九尾
    2015-12-24 10:45:59

    传进来的obj是“删除”这个a标签对象,obj的父节点是td(单元格),td的父节点是tr(行),所以tr变量就是当前点击的a标签所在的行对象,这个行对象tr的父节点就是表格,所以tr.parentNode.removeChild(tr);就是从表格里移除这一行。

    Missvi...

    谢谢谢谢

    2015-12-24 16:27:41

    共 1 条回复 >

JavaScript进阶篇

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

468195 学习 · 21891 问题

查看课程

相似问题