Javascript 有人能解释一下我的删除按钮的功能吗?

Javascript 有人能解释一下我的删除按钮的功能吗?,javascript,Javascript,以下是指向我的代码笔的链接,可查看我的所有代码: 我的问题与deleteButton函数有关。我很难理解这个概念 我为deleteButton(item)创建了一个函数。我只想知道变量remove中的“item”和“parentNode”代表什么?哪个是,哪个是 如蒙解释,不胜感激。谢谢 deleteButton(项目)附加到removeButton此表示按钮本身所在的当前节点 item.parentNode将只是按钮的父节点,该按钮是li元素remove变量保存此li元素 再次remove.p

以下是指向我的代码笔的链接,可查看我的所有代码:

我的问题与deleteButton函数有关。我很难理解这个概念

我为deleteButton(item)创建了一个函数。我只想知道变量remove中的“item”和“parentNode”代表什么?哪个是
,哪个是
  • 如蒙解释,不胜感激。谢谢

    deleteButton(项目)
    附加到
    removeButton
    <代码>此表示按钮本身所在的当前节点

    item.parentNode
    将只是按钮的父节点,该按钮是
    li
    元素
    remove
    变量保存此
    li
    元素

    再次
    remove.parentNode
    将返回
    li
    元素的父节点,该元素是
    ul
    元素

    从DOM中删除子节点

    所以在这种情况下,UL_元素.removeChild(LI_元素)

    在您的代码中(发布在场外)是很长的

    function deleteButton(item) {
        item.parentNode.parentNode.removeChild(item.parentNode); 
    }
    
    从其祖辈节点的子节点列表中删除已单击项的父节点。“删除”按钮的父节点是代码中的
    listItem
    ,这意味着将删除
    LI

    代码发布在场外的其他地方(不良做法™) delete函数定义为

    removeButton.setAttribute('onclick', 'deleteButton(this);');
    
    这真的非常有趣。它表明,在HTML解析完成后,使用文本设置onclick属性,会导致将文本解析为javascript函数的源代码,该函数将成为属性值。好的,所以setter可以做到这一点,但OneEvent setter做到这一点对我来说是新鲜事。测试表明这一点非常重要这是真的


    因此,答案是使用text设置节点的onclick属性将文本编译为函数对象,将函数对象附加为onclick属性值,当通过单击调用时,该属性值将被单击的节点作为onclick处理程序的
    对象他单击了对象,在这种情况下,LI元素被删除。

    请在此处包含相关代码,因为链接可能会更改。
    removeButton.setAttribute('onclick', 'deleteButton(this);');